Sha256: f8cab5eb33b20944768770648f88c4fbf56fc36a560e9b6af07d5bb8146b213a

Contents?: true

Size: 1.66 KB

Versions: 1

Compression:

Stored size: 1.66 KB

Contents

# Writer - internal data structure to ISO 19110:2003

# History:
# 	Stan Smith 2014-12-01 original script
#   Stan Smith 2014-12-12 refactored to handle namespacing readers and writers

$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '../iso/units'))
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '../iso/codelists'))
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '../iso/classes'))

require 'builder'
require 'date'
require 'uuidtools'
require 'adiwg/mdtranslator/writers/iso19110/class_FCfeatureCatalogue'

module ADIWG
    module Mdtranslator
        module Writers
            module Iso19110

                # set writer namespace
                $WriterNS = ADIWG::Mdtranslator::Writers::Iso19110

                def self.startWriter(intObj)

                    # reset ISO id='' counter
                    $idCount = '_000'

                    # set the format of the output file based on the writer specified
                    $response[:writerFormat] = 'xml'
                    $response[:writerVersion] = ADIWG::Mdtranslator::VERSION

                    # create new XML document
                    xml = Builder::XmlMarkup.new(indent: 3)
                    metadataWriter = $WriterNS::FC_FeatureCatalogue.new(xml)
                    metadata = metadataWriter.writeXML(intObj)

                    # set writer pass to true if no messages
                    # false or warning will be set by code that places the message
                    if $response[:writerMessages].length == 0
                        $response[:writerPass] = true
                    end

                    return metadata
                end

            end
        end
    end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
adiwg-mdtranslator-1.0.0rc1 lib/adiwg/mdtranslator/writers/iso19110/iso19110_writer.rb