class ADIWG::Mdtranslator::Writers::Iso19115_2::MD_LegalConstraints

Public Class Methods

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

Public Instance Methods

writeXML(hConstraint) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_legalConstraints.rb, line 29
def writeXML(hConstraint)

   # classes used
   codelistClass = MD_Codelist.new(@xml, @hResponseObj)

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

      # constraints - use limitation []
      aUse = hConstraint[:useLimitation]
      aUse.each do |useCon|
         @xml.tag!('gmd:useLimitation') do
            @xml.tag!('gco:CharacterString', useCon)
         end
      end
      if aUse.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:useLimitation')
      end

      hLegalCon = hConstraint[:legalConstraint]

      # legal constraints - access constraints
      aAccess = hLegalCon[:accessCodes]
      aAccess.each do |code|
         @xml.tag!('gmd:accessConstraints') do
            codelistClass.writeXML('gmd', 'iso_restriction', code)
         end
      end
      if aAccess.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:accessConstraints')
      end

      # legal constraints - use constraints
      aUse = hLegalCon[:useCodes]
      aUse.each do |code|
         @xml.tag!('gmd:useConstraints') do
            codelistClass.writeXML('gmd', 'iso_restriction', code)
         end
      end
      if aUse.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:useConstraints')
      end

      # legal constraints - other constraints
      aOther = hLegalCon[:otherCons]
      aOther.each do |con|
         @xml.tag!('gmd:otherConstraints') do
            @xml.tag!('gco:CharacterString', con)
         end
      end
      if aOther.empty? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:otherConstraints')
      end

   end # gmd:MD_LegalConstraints tag
end