class ADIWG::Mdtranslator::Writers::Iso19115_2::MD_Distributor
Public Class Methods
new(xml, hResponseObj)
click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_distributor.rb, line 28 def initialize(xml, hResponseObj) @xml = xml @hResponseObj = hResponseObj @NameSpace = ADIWG::Mdtranslator::Writers::Iso19115_2 end
Public Instance Methods
writeXML(hDistributor)
click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_distributor.rb, line 34 def writeXML(hDistributor) # classes used partyClass = CI_ResponsibleParty.new(@xml, @hResponseObj) orderClass = MD_StandardOrderProcess.new(@xml, @hResponseObj) formatClass = MD_Format.new(@xml, @hResponseObj) transferClass = MD_DigitalTransferOptions.new(@xml, @hResponseObj) outContext = 'distributor' @xml.tag!('gmd:MD_Distributor') do # distributor - contact (required) {CI_ResponsibleParty} role = 'distributor' hParty = hDistributor[:contact][:parties][0] unless hParty.nil? @xml.tag!('gmd:distributorContact') do partyClass.writeXML(role, hParty, 'distributor') end end if hParty.nil? @NameSpace.issueWarning(90, 'gmd:distributorContact') end # distributor - order process [{MD_StandardOrderProcess}] aDistOrderProc = hDistributor[:orderProcess] aDistOrderProc.each do |hOrder| @xml.tag!('gmd:distributionOrderProcess') do orderClass.writeXML(hOrder) end end if aDistOrderProc.empty? && @hResponseObj[:writerShowTags] @xml.tag!('gmd:distributionOrderProcess') end # distributor - format [{MD_Format}] format = false aOptions = hDistributor[:transferOptions] aOptions.each do |hOption| aFormats = hOption[:distributionFormats] aFormats.each do |hFormat| format = true @xml.tag!('gmd:distributorFormat') do formatClass.writeXML(hFormat, outContext + ' format') end end end if !format && @hResponseObj[:writerShowTags] @xml.tag!('gmd:distributorFormat') end # distributor - transfer options [{MD_DigitalTransferOptions}] aOptions = hDistributor[:transferOptions] aOptions.each do |hOption| @xml.tag!('gmd:distributorTransferOptions') do transferClass.writeXML(hOption) end end if aOptions.empty? && @hResponseObj[:writerShowTags] @xml.tag!('gmd:distributorTransferOptions') end end # gmd:MD_Distributor tag end