module ADIWG::Mdtranslator::Readers::MdJson::DataQualityReport
Public Class Methods
unpack(hReport, responseObj, inContext = nil)
click to toggle source
# File lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataQualityReport.rb, line 15 def self.unpack(hReport, responseObj, inContext = nil) @MessagePath = ADIWG::Mdtranslator::Readers::MdJson::MdJson outContext = 'Data Quality Report' outContext = inContext + ' > ' + outContext unless inContext.nil? if hReport.empty? @MessagePath.issueWarning(730, responseObj, inContext) return nil end intMetadataClass = InternalMetadata.new intReport = intMetadataClass.newDataQualityReport intReport[:type] = hReport["type"] if hReport.has_key?('conformanceResult') hReport['conformanceResult'].each do |item| hReturn = ConformanceResult.unpack(item, responseObj) unless hReturn.nil? intReport[:conformanceResult] << hReturn end end end if hReport.has_key?('coverageResult') hReport['coverageResult'].each do |item| hReturn = CoverageResult.unpack(item, responseObj) unless hReturn.nil? intReport[:coverageResult] << hReturn end end end if hReport.has_key?('descriptiveResult') hReport['descriptiveResult'].each do |item| hReturn = DescriptiveResult.unpack(item, responseObj) unless hReturn.nil? intReport[:descriptiveResult] << hReturn end end end if hReport.has_key?('evaluationMethod') hReturn = EvaluationMethod.unpack(hReport['evaluationMethod'], responseObj) unless hReturn.nil? intReport[:evaluationMethod] = hReturn end end if hReport.has_key?('qualityMeasure') qualityMeasure = hReport['qualityMeasure'] identifier = qualityMeasure['identifier'] intReport[:qualityMeasure] = {} if identifier intReport[:qualityMeasure][:identifier] = { identifier: identifier['identifier'], namespace: identifier['namespace'], version: identifier['version'], description: identifier['description'] } end if qualityMeasure intReport[:qualityMeasure][:name] = qualityMeasure['name'] intReport[:qualityMeasure][:description] = qualityMeasure['description'] end end if hReport.has_key?('quantitativeResult') hReport['quantitativeResult'].each do |item| hReturn = QuantitativeResult.unpack(item, responseObj) unless hReturn.nil? intReport[:quantitativeResult] << hReturn end end end return intReport end