class PipelineInstanceWorkUnit < ProxyWorkUnit
def children
- return self.my_children if self.my_children
+ return @my_children if @my_children
items = []
jobs = {}
- results = Job.where(uuid: self.proxied.job_ids.values).results
+ results = Job.where(uuid: @proxied.job_ids.values).results
results.each do |j|
jobs[j.uuid] = j
end
if job[:uuid] and jobs[job[:uuid]]
items << jobs[job[:uuid]].work_unit(name)
else
- items << JobWorkUnit.new(job, name)
+ items << JobWorkUnit.new(job, name, uuid)
end
else
- items << ProxyWorkUnit.new(c, name)
+ items << JobWorkUnit.new(c, name, uuid)
end
else
- self.unreadable_children = true
+ @unreadable_children = true
break
end
end
- self.my_children = items
+ @my_children = items
+ end
+
+ def outputs
+ items = []
+ components = get(:components)
+ components.each do |name, c|
+ if c.is_a?(Hash)
+ items << c[:output_uuid] if c[:output_uuid]
+ end
+ end
+ items
end
def uri
def title
"pipeline"
end
+
+ def template_uuid
+ get(:pipeline_template_uuid)
+ end
end