projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch '2096-demo-feedback'
[arvados.git]
/
apps
/
workbench
/
app
/
models
/
arvados_api_client.rb
diff --git
a/apps/workbench/app/models/arvados_api_client.rb
b/apps/workbench/app/models/arvados_api_client.rb
index 35d75267636040c4d0cb6f51cea590abe0f87fd0..84735d9774c60f902896d3a15f5ae6850fb977c7 100644
(file)
--- a/
apps/workbench/app/models/arvados_api_client.rb
+++ b/
apps/workbench/app/models/arvados_api_client.rb
@@
-32,6
+32,9
@@
class ArvadosApiClient
resources_kind = class_kind(resources_kind).pluralize if resources_kind.is_a? Class
url = "#{self.arvados_v1_base}/#{resources_kind}#{action}"
resources_kind = class_kind(resources_kind).pluralize if resources_kind.is_a? Class
url = "#{self.arvados_v1_base}/#{resources_kind}#{action}"
+ # Clean up /arvados/v1/../../discovery/v1 to /discovery/v1
+ url.sub! '/arvados/v1/../../', '/'
+
query = {"api_token" => api_token}
if !data.nil?
data.each do |k,v|
query = {"api_token" => api_token}
if !data.nil?
data.each do |k,v|
@@
-77,7
+80,7
@@
class ArvadosApiClient
if msg.status_code != 200
errors = resp[:errors]
errors = errors.join("\n\n") if errors.is_a? Array
if msg.status_code != 200
errors = resp[:errors]
errors = errors.join("\n\n") if errors.is_a? Array
- raise "
API error #{msg.status_code}:\n\n#{errors}\n
"
+ raise "
#{errors} [API: #{msg.status_code}]
"
end
if resp[:_profile]
Rails.logger.info "API client: " \
end
if resp[:_profile]
Rails.logger.info "API client: " \
@@
-138,6
+141,10
@@
class ArvadosApiClient
@arvados_schema ||= api 'schema', ''
end
@arvados_schema ||= api 'schema', ''
end
+ def discovery
+ @discovery ||= api '../../discovery/v1/apis/arvados/v1/rest', ''
+ end
+
def kind_class(kind)
kind.match(/^arvados\#(.+?)(_list|List)?$/)[1].pluralize.classify.constantize rescue nil
end
def kind_class(kind)
kind.match(/^arvados\#(.+?)(_list|List)?$/)[1].pluralize.classify.constantize rescue nil
end