class Api::ResponseBuilder::StatusCode

Class which helps in building status code of api response

Attributes

resource[RW]
status_code[RW]

Public Class Methods

new(resource, config = {}) click to toggle source
Calls superclass method Api::ResponseBuilder::Base::new
# File lib/api/response_builder/status_code.rb, line 9
def initialize(resource, config = {})
  super(resource, config)
  @resource = resource
  @status_code = :ok
  set_status_code
end

Private Instance Methods

set_status_code() click to toggle source
# File lib/api/response_builder/status_code.rb, line 18
def set_status_code
  return unless resource_has_errors? || api_exception? || other_exception?
  if resource_has_errors?
    @status_code = :unprocessable_entity
  elsif api_exception?
    # resource is an instance of ApiException class
    @status_code = @resource.status_code
  else
    # other exception which is probably internal server error
    @status_code = :internal_server_error
  end
end