fix requests endpoint, routes order for permissions, raise on undefined builder

This commit is contained in:
Sven Fuchs 2012-10-07 16:58:01 +02:00
parent 8abc330937
commit 2b290b9571
3 changed files with 12 additions and 9 deletions

View File

@ -4,7 +4,7 @@ class Travis::Api::App
class Endpoint
class Requests < Endpoint
post '/' do
service(:requests, :requeue).run
service(:requests, :requeue, params).run
204
end
end

View File

@ -19,19 +19,19 @@ class Travis::Api::App
# "synced_at": "2012-08-14T22:11:21Z"
# }
# }
get '/:id?', scope: :private do
get '/', scope: :private do
respond_with current_user
end
get '/permissions', scope: :private do
respond_with service(:users, :permissions).run, type: :permissions
end
put '/:id?', scope: :private do
update(params[:user]).run
204
end
get '/:id?/permissions', scope: :private do
respond_with service(:users, :permissions).run
end
post '/sync', scope: :private do
service(:users, :sync).run
204

View File

@ -5,9 +5,8 @@ module Travis::Api::App::Helpers::Responders
def render
options[:version] ||= version
builder = Travis::Api.builder(resource, options) # || raise("could not determine a builder for #{resource}, #{options}")
resource = builder.new(self.resource, request.params).data if builder
builder = Travis::Api.builder(resource, options) || raise_undefined_builder
resource = builder.new(self.resource, request.params).data
resource = resource.to_json unless resource.is_a?(String)
resource
end
@ -17,5 +16,9 @@ module Travis::Api::App::Helpers::Responders
def version
request.accept.join =~ ACCEPT_VERSION && "v#{$1}" || DEFAULT_VERSION
end
def raise_undefined_builder
raise("could not determine a builder for #{resource}, #{options}")
end
end
end