class Teneo::DataModel::IngestTask
noinspection RailsParamDefResolve
Constants
- STAGE_LIST
Public Class Methods
from_hash(hash, id_tags = [:ingest_workflow_id, :stage])
click to toggle source
Calls superclass method
Teneo::DataModel::Base::from_hash
# File lib/teneo/data_model/ingest_task.rb, line 25 def self.from_hash(hash, id_tags = [:ingest_workflow_id, :stage]) ingest_workflow = hash.delete(:ingest_workflow) query = ingest_workflow ? {name: ingest_workflow} : {id: hash[:ingest_workflow_id]} ingest_workflow = record_finder Teneo::DataModel::IngestWorkflow, query hash[:ingest_workflow_id] = ingest_workflow.id params = hash.delete(:values) item = super(hash, id_tags) do |item, h| if (stage_workflow = h.delete(:workflow)) item.stage_workflow = record_finder Teneo::DataModel::StageWorkflow, name: stage_workflow end end if params item.parameter_values.clear params.each do |name, value| item.parameter_values << Teneo::DataModel::ParameterValue.from_hash(name: name, value: value, with_values_id: item.id, with_values_type: item.class.name) end item.save! end item end