module Navigable::Server::Endpoint::InstanceMethods

Attributes

request[R]

Public Instance Methods

execute() click to toggle source
# File lib/navigable/server/endpoint.rb, line 32
def execute
  raise NotImplementedError.new(EXECUTE_NOT_IMPLEMENTED_MESSAGE) unless command_key

  return unauthenticated unless authenticated?
  return unauthorized unless authorized?

  dispatch
end
inject(request: Request.new) click to toggle source
# File lib/navigable/server/endpoint.rb, line 28
def inject(request: Request.new)
  @request = request
end

Private Instance Methods

authenticated?() click to toggle source
# File lib/navigable/server/endpoint.rb, line 71
def authenticated?
  true
end
authorized?() click to toggle source
# File lib/navigable/server/endpoint.rb, line 75
def authorized?
  true
end
command_key() click to toggle source
# File lib/navigable/server/endpoint.rb, line 47
def command_key
  self.class.instance_variable_get(:@command_key)
end
dispatch() click to toggle source
# File lib/navigable/server/endpoint.rb, line 43
def dispatch
  Navigable::Dispatcher.dispatch(command_key, params: params, resolver: resolver)
end
params() click to toggle source
# File lib/navigable/server/endpoint.rb, line 51
def params
  request.params
end
preferred_media_type() click to toggle source
# File lib/navigable/server/endpoint.rb, line 55
def preferred_media_type
  request.headers[:preferred_media_type]
end
resolver() click to toggle source
# File lib/navigable/server/endpoint.rb, line 59
def resolver
  Manufacturable.build_one(Resolver::TYPE, preferred_media_type) || Navigable::NullResolver.new
end
unauthenticated() click to toggle source
# File lib/navigable/server/endpoint.rb, line 63
def unauthenticated
  UNAUTHENTICATED
end
unauthorized() click to toggle source
# File lib/navigable/server/endpoint.rb, line 67
def unauthorized
  UNAUTHORIZED
end