Module: JSONAPI::ActsAsResourceController
- Included in:
- ResourceController
- Defined in:
- lib/jsonapi/acts_as_resource_controller.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #create ⇒ Object
-
#create_operations_processor ⇒ Object
set the operations processor in the configuration or override this to use another operations processor.
- #create_relationship ⇒ Object
- #destroy ⇒ Object
- #destroy_relationship ⇒ Object
- #get_related_resource ⇒ Object
- #get_related_resources ⇒ Object
- #index ⇒ Object
- #process_request ⇒ Object
- #show ⇒ Object
- #show_relationship ⇒ Object
- #update ⇒ Object
- #update_relationship ⇒ Object
Class Method Details
.included(base) ⇒ Object
6 7 8 9 10 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 6 def self.included(base) base.extend ClassMethods base.before_action :ensure_correct_media_type, only: [:create, :update, :create_relationship, :update_relationship] base.cattr_reader :server_error_callbacks end |
Instance Method Details
#create ⇒ Object
24 25 26 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 24 def create process_request end |
#create_operations_processor ⇒ Object
set the operations processor in the configuration or override this to use another operations processor
76 77 78 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 76 def create_operations_processor JSONAPI.configuration.operations_processor.new end |
#create_relationship ⇒ Object
28 29 30 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 28 def create_relationship process_request end |
#destroy ⇒ Object
40 41 42 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 40 def destroy process_request end |
#destroy_relationship ⇒ Object
44 45 46 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 44 def destroy_relationship process_request end |
#get_related_resource ⇒ Object
48 49 50 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 48 def process_request end |
#get_related_resources ⇒ Object
52 53 54 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 52 def process_request end |
#index ⇒ Object
12 13 14 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 12 def index process_request end |
#process_request ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 56 def process_request @request = JSONAPI::Request.new(params, context: context, key_formatter: key_formatter, server_error_callbacks: (self.class.server_error_callbacks || [])) unless @request.errors.empty? render_errors(@request.errors) else operation_results = create_operations_processor.process(@request) render_results(operation_results) end rescue => e handle_exceptions(e) ensure if response.body.size > 0 response.headers['Content-Type'] = JSONAPI::MEDIA_TYPE end end |
#show ⇒ Object
16 17 18 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 16 def show process_request end |
#show_relationship ⇒ Object
20 21 22 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 20 def show_relationship process_request end |
#update ⇒ Object
36 37 38 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 36 def update process_request end |
#update_relationship ⇒ Object
32 33 34 |
# File 'lib/jsonapi/acts_as_resource_controller.rb', line 32 def update_relationship process_request end |