lib/gooddata/models/process.rb in gooddata-0.6.9 vs lib/gooddata/models/process.rb in gooddata-0.6.10
- old
+ new
@@ -19,16 +19,23 @@
if id == :all && project
uri = "/gdc/projects/#{project.pid}/dataload/processes"
data = c.get(uri)
data['processes']['items'].map do |process_data|
- Process.new(process_data)
+ c.create(Process, process_data, project: project)
end
elsif id == :all
uri = "/gdc/account/profile/#{c.user.obj_id}/dataload/processes"
data = c.get(uri)
+ pids = data['processes']['items'].map { |process_data| process_data['process']['links']['self'].match(%r{/gdc/projects/(\w*)/})[1] }.uniq
+ projects_lookup = pids.pmap { |pid| c.projects(pid) }.reduce({}) do |a, e|
+ a[e.pid] = e
+ a
+ end
+
data['processes']['items'].map do |process_data|
- c.create(Process, process_data)
+ pid = process_data['process']['links']['self'].match(%r{/gdc/projects/(\w*)/})[1]
+ c.create(Process, process_data, project: projects_lookup[pid])
end
else
uri = "/gdc/projects/#{project.pid}/dataload/processes/#{id}"
c.create(Process, c.get(uri), project: project)
end