Sha256: f8792953cb188cf6a72ee815c80f909a6058d04b3579f6ae5a5113ea0ed3a43d

Contents?: true

Size: 1.21 KB

Versions: 1

Compression:

Stored size: 1.21 KB

Contents

# unpack lineage
# Reader - ADIwg JSON V1 to internal data structure

# History:
# 	Stan Smith 2013-11-26 original script
#   Stan Smith 2014-07-03 resolve require statements using Mdtranslator.reader_module

require ADIWG::Mdtranslator.reader_module('module_processStep', $response[:readerVersionUsed])
require ADIWG::Mdtranslator.reader_module('module_source', $response[:readerVersionUsed])

module Md_Lineage

	def self.unpack(hLineage)

		# instance classes needed in script
		intMetadataClass = InternalMetadata.new
		intDataLine = intMetadataClass.newLineage

		# lineage - statement
		if hLineage.has_key?('statement')
			s = hLineage['statement']
			if s != ''
				intDataLine[:statement] = s
			end
		end

		# lineage - process steps
		if hLineage.has_key?('processStep')
			aProcSteps = hLineage['processStep']
			unless aProcSteps.empty?
				aProcSteps.each do |hProcStep|
					intDataLine[:processSteps] << Md_ProcessStep.unpack(hProcStep)
				end
			end
		end

		# lineage - data sources
		if hLineage.has_key?('source')
			aSources = hLineage['source']
			unless aSources.empty?
				aSources.each do |hSource|
					intDataLine[:dataSources] << Md_Source.unpack(hSource)
				end
			end
		end

		return intDataLine
	end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
adiwg-mdtranslator-0.10.2 lib/adiwg/mdtranslator/readers/mdJson/modules_0.9.0/module_lineage.rb