Sha256: 81f9dc5f1a588176c7eba86b9b18f33cc4a87a618825643fcc311ec19bd0f7b9

Contents?: true

Size: 1.99 KB

Versions: 45

Compression:

Stored size: 1.99 KB

Contents

# Reader - fgdc to internal data structure
# unpack fgdc security

# History:
#  Stan Smith 2017-08-25 original script

require 'nokogiri'
require 'adiwg/mdtranslator/internal/internal_metadata_obj'

module ADIWG
   module Mdtranslator
      module Readers
         module Fgdc

            module Security

               def self.unpack(xSecurity, hResponseObj)

                  # instance classes needed in script
                  intMetadataClass = InternalMetadata.new
                  hConstraint = intMetadataClass.newConstraint
                  hConstraint[:type] = 'security'
                  hSecurity = intMetadataClass.newSecurityConstraint

                  # series 1.12.1 (secsys) - security system name (required)
                  system = xSecurity.xpath('./secsys').text
                  hSecurity[:classSystem] = system unless system.empty?
                  if system.empty?
                     hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: security system name is missing'
                  end

                  # series 1.12.2 (secclass) - security classification (required)
                  secClass = xSecurity.xpath('./secclass').text
                  hSecurity[:classCode] = secClass unless secClass.empty?
                  if secClass.empty?
                     hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: security classification is missing'
                  end

                  # series 1.12.3 (sechandl) - security handling instructions (required)
                  secHand = xSecurity.xpath('./sechandl').text
                  hSecurity[:handling] = secHand unless secHand.empty?
                  if secHand.empty?
                     hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: security handling instructions are missing'
                  end

                  hConstraint[:securityConstraint] = hSecurity

                  return hConstraint

               end

            end

         end
      end
   end
end

Version data entries

45 entries across 45 versions & 1 rubygems

Version Path
adiwg-mdtranslator-2.21.0.pre.beta.1 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.20.0.pre.beta.10 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.20.0.pre.beta.9 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.20.0.pre.beta.8 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.20.0.pre.beta.7 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.20.0.pre.beta.6 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.31 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.30 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.29 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.28 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.27 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.26 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.13 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.12 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.11 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.10 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.9 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.8 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.19.0.pre.beta.7 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb
adiwg-mdtranslator-2.18.4 lib/adiwg/mdtranslator/readers/fgdc/modules/module_security.rb