Files

Class Index [+]

Quicksearch

ActiveRecord::Locking::Optimistic::ClassMethods

Constants

DEFAULT_LOCKING_COLUMN

Public Instance Methods

locking_column() click to toggle source

The version column used for optimistic locking. Defaults to lock_version.

     # File lib/active_record/locking/optimistic.rb, line 149
149:         def locking_column
150:           reset_locking_column
151:         end
locking_enabled?() click to toggle source

Is optimistic locking enabled for this table? Returns true if the lock_optimistically flag is set to true (which it is, by default) and the table includes the locking_column column (defaults to lock_version).

     # File lib/active_record/locking/optimistic.rb, line 138
138:         def locking_enabled?
139:           lock_optimistically && columns_hash[locking_column]
140:         end
quoted_locking_column() click to toggle source

Quote the column name used for optimistic locking.

     # File lib/active_record/locking/optimistic.rb, line 154
154:         def quoted_locking_column
155:           connection.quote_column_name(locking_column)
156:         end
reset_locking_column() click to toggle source

Reset the column used for optimistic locking back to the lock_version default.

     # File lib/active_record/locking/optimistic.rb, line 159
159:         def reset_locking_column
160:           set_locking_column DEFAULT_LOCKING_COLUMN
161:         end
set_locking_column(value = nil, &block) click to toggle source

Set the column to use for optimistic locking. Defaults to lock_version.

     # File lib/active_record/locking/optimistic.rb, line 143
143:         def set_locking_column(value = nil, &block)
144:           define_attr_method :locking_column, value, &block
145:           value
146:         end
update_counters(id, counters) click to toggle source

Make sure the lock version column gets updated when counters are updated.

     # File lib/active_record/locking/optimistic.rb, line 165
165:         def update_counters(id, counters)
166:           counters = counters.merge(locking_column => 1) if locking_enabled?
167:           super
168:         end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.