X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/acedca207179925286810dd9c2ad7934ce5bfe69..73e1bfac301b9285f734374abe84d8146897c585:/services/api/app/controllers/application_controller.rb diff --git a/services/api/app/controllers/application_controller.rb b/services/api/app/controllers/application_controller.rb index 9878547f30..434b09572b 100644 --- a/services/api/app/controllers/application_controller.rb +++ b/services/api/app/controllers/application_controller.rb @@ -24,7 +24,7 @@ class ApplicationController < ActionController::Base def show if @object - render json: @object.as_api_response(:superuser) + render json: @object.as_api_response else render_not_found("object not found") end @@ -69,7 +69,7 @@ class ApplicationController < ActionController::Base :with => :render_not_found rescue_from ActionController::UnknownController, :with => :render_not_found - rescue_from ActionController::UnknownAction, + rescue_from AbstractController::ActionNotFound, :with => :render_not_found rescue_from ArvadosModel::PermissionDeniedError, :with => :render_error @@ -83,7 +83,8 @@ class ApplicationController < ActionController::Base else errors = [e.inspect] end - render json: { errors: errors }, status: 422 + status = e.respond_to?(:http_status) ? e.http_status : 422 + render json: { errors: errors }, status: status end def render_not_found(e=ActionController::RoutingError.new("Path not found")) @@ -332,7 +333,7 @@ class ApplicationController < ActionController::Base :self_link => "", :next_page_token => "", :next_link => "", - :items => @objects.as_api_response(:superuser) + :items => @objects.as_api_response(nil) } render json: @object_list end @@ -354,4 +355,9 @@ class ApplicationController < ActionController::Base order: { type: 'string', required: false } } end + + def client_accepts_plain_text_stream + (request.headers['Accept'].split(' ') & + ['text/plain', '*/*']).count > 0 + end end