Class: Louisville::CollisionResolvers::NumericSequence
- Inherits:
-
Abstract
- Object
- Abstract
- Louisville::CollisionResolvers::NumericSequence
show all
- Defined in:
- lib/louisville/collision_resolvers/numeric_sequence.rb
Instance Method Summary
collapse
Methods inherited from Abstract
#initialize, #unique?
Instance Method Details
#assign_slug(val) ⇒ Object
16
17
18
19
20
21
|
# File 'lib/louisville/collision_resolvers/numeric_sequence.rb', line 16
def assign_slug(val)
base, seq = Louisville::Util.slug_parts(val)
@instance.send("#{config[:column]}=", base)
@instance.send("#{config[:column]}_sequence=", seq)
end
|
#next_valid_slug ⇒ Object
11
12
13
|
# File 'lib/louisville/collision_resolvers/numeric_sequence.rb', line 11
def next_valid_slug
provide_latest_slug(next_valid_slug_from_table, next_valid_slug_from_history)
end
|
#provides_collision_solution? ⇒ Boolean
6
7
8
|
# File 'lib/louisville/collision_resolvers/numeric_sequence.rb', line 6
def provides_collision_solution?
true
end
|
#read_slug ⇒ Object
24
25
26
27
28
29
|
# File 'lib/louisville/collision_resolvers/numeric_sequence.rb', line 24
def read_slug
col = config[:column]
seq = "#{col}_sequence"
"#{@instance.send(col)}--#{@instance.send(seq)}"
end
|
#slug_changed? ⇒ Boolean
32
33
34
|
# File 'lib/louisville/collision_resolvers/numeric_sequence.rb', line 32
def slug_changed?
@instance.send("#{config[:column]}_changed?") || @instance.send("#{@config[:column]}_sequence_changed?")
end
|