Class: JSONAPI::Realizer::Action::Update

Inherits:
JSONAPI::Realizer::Action show all
Defined in:
lib/jsonapi/realizer/action/update.rb

Instance Attribute Summary collapse

Attributes inherited from JSONAPI::Realizer::Action

#payload

Instance Method Summary collapse

Constructor Details

#initialize(payload:, headers:) ⇒ Update

Returns a new instance of Update.



7
8
9
10
11
# File 'lib/jsonapi/realizer/action/update.rb', line 7

def initialize(payload:, headers:)
  @payload = payload
  @headers = headers
  @resource = resource_class.new(adapter.find_via_call(relation, id))
end

Instance Attribute Details

#resourceObject

Returns the value of attribute resource.



5
6
7
# File 'lib/jsonapi/realizer/action/update.rb', line 5

def resource
  @resource
end

Instance Method Details

#callObject



13
14
15
16
17
# File 'lib/jsonapi/realizer/action/update.rb', line 13

def call
  adapter.assign_attributes_via_call(resource.model, attributes)
  adapter.assign_relationships_via_call(resource.model, relationships)
  adapter.update_via_call(resource.model)
end

#modelObject



19
20
21
# File 'lib/jsonapi/realizer/action/update.rb', line 19

def model
  resource.model
end