Class: JSONAPI::ReplaceFieldsOperation
- Defined in:
- lib/jsonapi/operation.rb
Instance Attribute Summary collapse
-
#data ⇒ Object
readonly
Returns the value of attribute data.
-
#resource_id ⇒ Object
readonly
Returns the value of attribute resource_id.
Attributes inherited from Operation
#options, #resource_klass, #transactional
Instance Method Summary collapse
- #apply ⇒ Object
-
#initialize(resource_klass, options = {}) ⇒ ReplaceFieldsOperation
constructor
A new instance of ReplaceFieldsOperation.
Constructor Details
#initialize(resource_klass, options = {}) ⇒ ReplaceFieldsOperation
Returns a new instance of ReplaceFieldsOperation.
235 236 237 238 239 |
# File 'lib/jsonapi/operation.rb', line 235 def initialize(resource_klass, = {}) super(resource_klass, ) @resource_id = .fetch(:resource_id) @data = .fetch(:data) end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
233 234 235 |
# File 'lib/jsonapi/operation.rb', line 233 def data @data end |
#resource_id ⇒ Object (readonly)
Returns the value of attribute resource_id.
233 234 235 |
# File 'lib/jsonapi/operation.rb', line 233 def resource_id @resource_id end |
Instance Method Details
#apply ⇒ Object
241 242 243 244 245 246 |
# File 'lib/jsonapi/operation.rb', line 241 def apply resource = @resource_klass.find_by_key(@resource_id, context: @context) result = resource.replace_fields(data) return JSONAPI::ResourceOperationResult.new(result == :completed ? :ok : :accepted, resource) end |