module ADIWG::Mdtranslator::Readers::MdJson::Extent
Public Class Methods
unpack(hExtent, responseObj, inContext = nil)
click to toggle source
# File lib/adiwg/mdtranslator/readers/mdJson/modules/module_extent.rb, line 19 def self.unpack(hExtent, responseObj, inContext = nil) @MessagePath = ADIWG::Mdtranslator::Readers::MdJson::MdJson # return nil object if input is empty if hExtent.empty? @MessagePath.issueWarning(270, responseObj, inContext) return nil end # instance classes needed in script intMetadataClass = InternalMetadata.new intExtent = intMetadataClass.newExtent outContext = 'extent' outContext = inContext + ' > ' + outContext unless inContext.nil? haveExtent = false # extent - description if hExtent.has_key?('description') unless hExtent['description'] == '' intExtent[:description] = hExtent['description'] haveExtent = true end end # extent - geographicExtent if hExtent.has_key?('geographicExtent') hExtent['geographicExtent'].each do |item| unless item.empty? hReturn = GeographicExtent.unpack(item, responseObj, outContext) unless hReturn.nil? intExtent[:geographicExtents] << hReturn haveExtent = true end end end end # extent - temporalExtent if hExtent.has_key?('temporalExtent') hExtent['temporalExtent'].each do |item| unless item.empty? hReturn = TemporalExtent.unpack(item, responseObj, outContext) unless hReturn.nil? intExtent[:temporalExtents] << hReturn haveExtent = true end end end end # extent - verticalExtent if hExtent.has_key?('verticalExtent') hExtent['verticalExtent'].each do |item| unless item.empty? hReturn = VerticalExtent.unpack(item, responseObj, outContext) unless hReturn.nil? intExtent[:verticalExtents] << hReturn haveExtent = true end end end end # error messages unless haveExtent @MessagePath.issueError(271, responseObj, inContext) end return intExtent end