class Storage::Algolia::Actions::Update
Attributes
id[R]
model_name[R]
params[R]
retries[R]
Public Class Methods
new(model_name:, params:, id:)
click to toggle source
# File lib/storage/algolia/actions/update.rb, line 11 def initialize(model_name:, params:, id:) @model_name = model_name @params = params @id = id @retries = 0 end
Public Instance Methods
process()
click to toggle source
# File lib/storage/algolia/actions/update.rb, line 18 def process raise Exception unless task.dig('objectID') normalize original_object.to_hash.merge( { objectID: task.dig('objectID'), updatedAt: task.dig('updatedAt') }, params ) end
Private Instance Methods
original_object()
click to toggle source
# File lib/storage/algolia/actions/update.rb, line 32 def original_object @original_object ||= ::Storage::Algolia::Actions::Get.process( model_name: model_name, id: id ) end
task()
click to toggle source
# File lib/storage/algolia/actions/update.rb, line 39 def task @task ||= index.partial_update_object(params, id) end