class ADIWG::Mdtranslator::Writers::Iso19115_2::EX_Extent

Public Class Methods

new(xml, hResponseObj) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_extent.rb, line 28
def initialize(xml, hResponseObj)
   @xml = xml
   @hResponseObj = hResponseObj
end

Public Instance Methods

writeXML(hExtent, inContext = nil) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_extent.rb, line 33
def writeXML(hExtent, inContext = nil)

   # classes used
   tempExtClass = EX_TemporalExtent.new(@xml, @hResponseObj)
   vertExtClass = EX_VerticalExtent.new(@xml, @hResponseObj)
   geoExtClass = GeographicExtent.new(@xml, @hResponseObj)

   @xml.tag!('gmd:EX_Extent') do

      # extent - description
      s = hExtent[:description]
      unless s.nil?
         @xml.tag!('gmd:description') do
            @xml.tag!('gco:CharacterString', s)
         end
      end
      if s.nil? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:description')
      end

      # extent - geographic extent []
      aGeoExtents = hExtent[:geographicExtents]
      aGeoExtents.each do |hGeoExtent|
         geoExtClass.writeXML(hGeoExtent)
      end
      if aGeoExtents.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:geographicElement')
      end

      # extent - temporal extent []
      aTempElements = hExtent[:temporalExtents]
      aTempElements.each do |hTempElement|
         @xml.tag!('gmd:temporalElement') do
            tempExtClass.writeXML(hTempElement)
         end
      end
      if aTempElements.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:temporalElement')
      end

      # extent - vertical extent []
      aVertElements = hExtent[:verticalExtents]
      aVertElements.each do |hVertElement|
         @xml.tag!('gmd:verticalElement') do
            vertExtClass.writeXML(hVertElement)
         end
      end
      if aVertElements.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:verticalElement')
      end

   end # gmd:EX_Extent tag
end