module ADIWG::Mdtranslator::Readers::MdJson::Processing
Public Class Methods
unpack(hProcessing, responseObj, inContext = nil)
click to toggle source
# File lib/adiwg/mdtranslator/readers/mdJson/modules/module_processing.rb, line 18 def self.unpack(hProcessing, responseObj, inContext = nil) @MessagePath = ADIWG::Mdtranslator::Readers::MdJson::MdJson # return nil object if input is empty if hProcessing.empty? @MessagePath.issueWarning(990, responseObj, inContext) return nil end # instance classes needed in script intMetadataClass = InternalMetadata.new intProcessing = intMetadataClass.newProcessing outContext = 'process step report' outContext = inContext + ' > ' + outContext unless inContext.nil? # processing - identifier {identifier} (required) if hProcessing.has_key?('identifier') unless hProcessing['identifier'].empty? hReturn = Identifier.unpack(hProcessing['identifier'], responseObj, outContext) unless hReturn.nil? intProcessing[:identifier] = hReturn end end end if intProcessing[:identifier].empty? @MessagePath.issueWarning(991, responseObj, inContext) end # processing - software reference if hProcessing.has_key?('softwareReference') unless hProcessing['softwareReference'].empty? hReturn = Citation.unpack(hProcessing['softwareReference'], responseObj, outContext) unless hReturn.nil? intProcessing[:softwareReference] = hReturn end end end # processing - procedure description if hProcessing.has_key?('procedureDescription') unless hProcessing['procedureDescription'] == '' intProcessing[:procedureDescription] = hProcessing['procedureDescription'] end end # processing - documentation if hProcessing.has_key?('documentation') aCitation = hProcessing['documentation'] aCitation.each do |item| hCitation = Citation.unpack(item, responseObj, outContext) unless hCitation.nil? intProcessing[:documentation] << hCitation end end end # processing - runtime parameters if hProcessing.has_key?('runtimeParameters') unless hProcessing['runtimeParameters'] == '' intProcessing[:runtimeParameters] = hProcessing['runtimeParameters'] end end # processing - algorithm if hProcessing.has_key?('algorithm') aAlgorithm = hProcessing['algorithm'] aAlgorithm.each do |item| hAlgorithm = Algorithm.unpack(item, responseObj, outContext) unless hAlgorithm.nil? intProcessing[:algorithms] << hAlgorithm end end end return intProcessing end