Sha256: fbb7a68e495b65ea0d3ad6b4d37e226803ec657b701717deb3f4eb8a78c44383

Contents?: true

Size: 844 Bytes

Versions: 3

Compression:

Stored size: 844 Bytes

Contents

require 'saxon/xdm'

module Saxon
  # Builds XDM objects from XML sources, for use in XSLT or for query and
  # access
  class DocumentBuilder
    # @api private
    # @param [net.sf.saxon.s9api.DocumentBuilder] s9_document_builder The
    # Saxon DocumentBuilder instance to wrap
    def initialize(s9_document_builder)
      @s9_document_builder = s9_document_builder
    end

    # @param [Saxon::Source] source The Saxon::Source containing the source
    #   IO/string
    # @return [Saxon::XDM::Node] The Saxon::XDM::Node representing the root of the
    #   document tree
    def build(source)
      XDM::Node.new(@s9_document_builder.build(source.to_java))
    end

    # @return [net.sf.saxon.s9api.DocumentBuilder] The underlying Java Saxon
    #   DocumentBuilder instance
    def to_java
      @s9_document_builder
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
saxon-rb-0.6.0-java lib/saxon/document_builder.rb
saxon-rb-0.5.0-java lib/saxon/document_builder.rb
saxon-rb-0.4.0-java lib/saxon/document_builder.rb