Class: Counter::Cache::Counters::BufferCounter::Saver

Inherits:
Struct
  • Object
show all
Defined in:
lib/counter/cache/counters/buffer_counter/saver.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#optionsObject

Returns the value of attribute options

Returns:

  • (Object)

    the current value of options



5
6
7
# File 'lib/counter/cache/counters/buffer_counter/saver.rb', line 5

def options
  @options
end

Instance Method Details

#save! {|old_value, new_value, relation_object, options.column| ... } ⇒ Object

Yields:

  • (old_value, new_value, relation_object, options.column)


6
7
8
9
10
11
12
13
14
15
# File 'lib/counter/cache/counters/buffer_counter/saver.rb', line 6

def save!
  return unless relation_object

  old_value = current_column_value
  new_value = calculate_new_value

  save_new_value!(new_value)

  yield old_value, new_value, relation_object, options.column if block_given?
end