class ADIWG::Mdtranslator::Writers::Iso19115_2::MD_SecurityConstraints

Public Class Methods

new(xml, hResponseObj) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_securityConstraints.rb, line 25
def initialize(xml, hResponseObj)
   @xml = xml
   @hResponseObj = hResponseObj
   @NameSpace = ADIWG::Mdtranslator::Writers::Iso19115_2
end

Public Instance Methods

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

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

   @xml.tag!('gmd:MD_SecurityConstraints') 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

      hSecurityCon = hConstraint[:securityConstraint]

      # security constraints - classification code (required)
      s = hSecurityCon[:classCode]
      unless s.nil?
         @xml.tag!('gmd:classification') do
            codelistClass.writeXML('gmd', 'iso_classification', s)
         end
      end
      if s.nil?
         @NameSpace.issueWarning(290, 'gmd:classification')
      end

      # security constraints - user note
      s = hSecurityCon[:userNote]
      unless s.nil?
         @xml.tag!('gmd:userNote') do
            @xml.tag!('gco:CharacterString', s)
         end
      end
      if s.nil? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:userNote')
      end

      # security constraints - classification system
      s = hSecurityCon[:classSystem]
      unless s.nil?
         @xml.tag!('gmd:classificationSystem') do
            @xml.tag!('gco:CharacterString', s)
         end
      end
      if s.nil? && @hResponseObj[:writerShowTags]
         @xml.tag!('gmd:classificationSystem')
      end

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

   end # MD_SecurityConstraints tag
end