class SimpleJsonapi::Rails::ActionController::RequestValidator
Attributes
params[R]
request[R]
Public Class Methods
new(request, params)
click to toggle source
# File lib/simple_jsonapi/rails/action_controller/request_validator.rb, line 9 def initialize(request, params) @request = request @params = params end
Public Instance Methods
valid_accept_header?()
click to toggle source
# File lib/simple_jsonapi/rails/action_controller/request_validator.rb, line 22 def valid_accept_header? request_accept.blank? || request_accept == SimpleJsonapi::MIME_TYPE end
valid_content_type_header?()
click to toggle source
# File lib/simple_jsonapi/rails/action_controller/request_validator.rb, line 14 def valid_content_type_header? if request.respond_to?(:media_type) !request_has_body? || request_media_type == SimpleJsonapi::MIME_TYPE else !request_has_body? || request_content_type == SimpleJsonapi::MIME_TYPE end end
valid_relationship_body?()
click to toggle source
# File lib/simple_jsonapi/rails/action_controller/request_validator.rb, line 32 def valid_relationship_body? request_path.exclude?("relationships") || params["data"]&.is_a?(Array) end
valid_request_body?()
click to toggle source
# File lib/simple_jsonapi/rails/action_controller/request_validator.rb, line 26 def valid_request_body? return true unless request_has_body? params["data"].present? && valid_relationship_body? end
Private Instance Methods
request_has_body?()
click to toggle source
# File lib/simple_jsonapi/rails/action_controller/request_validator.rb, line 38 def request_has_body? request_body.size > 0 end