class ADIWG::Mdtranslator::Writers::Iso19115_1::MD_SecurityConstraints

Public Class Methods

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

Public Instance Methods

writeXML(hConstraint, inContext = nil) click to toggle source
# File lib/adiwg/mdtranslator/writers/iso19115_1/classes/class_securityConstraints.rb, line 24
def writeXML(hConstraint, inContext = nil)

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

   outContext = 'security constraint'
   outContext = inContext + ' security constraint' unless inContext.nil?

   hSecurityCon = hConstraint[:securityConstraint]
   unless hSecurityCon.empty?
      @xml.tag!('mco:MD_SecurityConstraints') do

         # security constraints - use constraint elements
         commonClass.writeXML(hConstraint, outContext)

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

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

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

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

      end # MD_SecurityConstraints tag

   end
   if hSecurityCon.empty?
      @NameSpace.issueWarning(292, nil, outContext)
   end

end