Module: JSONAPI::Utils::Request

Included in:
JSONAPI::Utils
Defined in:
lib/jsonapi/utils/request.rb

Instance Method Summary collapse

Instance Method Details

#check_requestObject

Render an error response if the parsed request got any error.



28
29
30
# File 'lib/jsonapi/utils/request.rb', line 28

def check_request
  @request.errors.blank? || jsonapi_render_errors(json: @request)
end

#jsonapi_request_handlingObject

Setup and check request before action gets actually evaluated.



6
7
8
9
# File 'lib/jsonapi/utils/request.rb', line 6

def jsonapi_request_handling
  setup_request
  check_request
end

#process_requestString

Override the JSONAPI::ActsAsResourceController#process_request method.

It might be removed when the following line on JR is fixed: github.com/cerebris/jsonapi-resources/blob/release-0-8/lib/jsonapi/acts_as_resource_controller.rb#L62

Returns:

  • (String)


40
41
42
43
44
45
# File 'lib/jsonapi/utils/request.rb', line 40

def process_request
  process_operations
  render_results(@operation_results)
rescue => e
  handle_exceptions(e)
end

#relationship_paramsHash

Helper to get params for relationship params.

Returns:

  • (Hash)


61
62
63
# File 'lib/jsonapi/utils/request.rb', line 61

def relationship_params
  build_params_for(:relationship)
end

#resource_paramsHash

Helper to get params for the main resource.

Returns:

  • (Hash)


52
53
54
# File 'lib/jsonapi/utils/request.rb', line 52

def resource_params
  build_params_for(:resource)
end

#setup_requestJSONAPI::RequestParser

Instantiate the request object.

Returns:

  • (JSONAPI::RequestParser)


16
17
18
19
20
21
22
23
# File 'lib/jsonapi/utils/request.rb', line 16

def setup_request
  @request ||= JSONAPI::RequestParser.new(
    params,
    context: context,
    key_formatter: key_formatter,
    server_error_callbacks: (self.class.server_error_callbacks || [])
  )
end