projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
3170: Merge branch 'master' into 3170-refresh-tab-pane
[arvados.git]
/
apps
/
workbench
/
app
/
controllers
/
actions_controller.rb
diff --git
a/apps/workbench/app/controllers/actions_controller.rb
b/apps/workbench/app/controllers/actions_controller.rb
index bd182d4e889dc8d6902a1b82e4e03e5a696cd2f9..9a76e9aed412522ffa14166e0b9aadbe1f8e8acf 100644
(file)
--- a/
apps/workbench/app/controllers/actions_controller.rb
+++ b/
apps/workbench/app/controllers/actions_controller.rb
@@
-73,10
+73,11
@@
class ActionsController < ApplicationController
def arv_normalize mt, *opts
r = ""
IO.popen(['arv-normalize'] + opts, 'w+b') do |io|
def arv_normalize mt, *opts
r = ""
IO.popen(['arv-normalize'] + opts, 'w+b') do |io|
- io.write mt
- io.close_write
- while buf = io.read(2**16)
- r += buf
+ io.write mt
+ io.close_write
+ while buf = io.read(2**16)
+ r += buf
+ end
end
r
end
end
r
end
@@
-85,7
+86,17
@@
class ActionsController < ApplicationController
lst = []
files = []
params["selection"].each do |s|
lst = []
files = []
params["selection"].each do |s|
- m = CollectionsHelper.match(s)
+ a = ArvadosBase::resource_class_for_uuid s
+ m = nil
+ if a == Link
+ begin
+ m = CollectionsHelper.match(Link.find(s).head_uuid)
+ rescue
+ end
+ else
+ m = CollectionsHelper.match(s)
+ end
+
if m and m[1] and m[2]
lst.append(m[1] + m[2])
files.append(m)
if m and m[1] and m[2]
lst.append(m[1] + m[2])
files.append(m)
@@
-117,7
+128,7
@@
class ActionsController < ApplicationController
d = Digest::MD5.new()
d << normalized_stripped
d = Digest::MD5.new()
d << normalized_stripped
- newuuid = "#{d.hexdigest}+#{normalized.length}"
+ newuuid = "#{d.hexdigest}+#{normalized
_stripped
.length}"
env = Hash[ENV].
merge({
env = Hash[ENV].
merge({
@@
-131,10
+142,9
@@
class ActionsController < ApplicationController
})
IO.popen([env, 'arv-put', '--raw'], 'w+b') do |io|
})
IO.popen([env, 'arv-put', '--raw'], 'w+b') do |io|
- io.write normalized
+ io.write normalized
_stripped
io.close_write
io.close_write
- while buf = io.read(2**20)
-
+ while buf = io.read(2**16)
end
end
end
end