Module: CequelStatefulEnum::Extension

Defined in:
lib/cequel_stateful_enum.rb

Instance Method Summary collapse

Instance Method Details

#column(name, type, options = {}, &block) ⇒ Object

column :status, :enum, values: { opened: 1, closed: 2 } do

  event :close do
    transition :opened => :closed
  end
end


13
14
15
16
17
18
19
20
21
# File 'lib/cequel_stateful_enum.rb', line 13

def column(name, type, options = {}, &block)
  super

  if type == :enum && block
    states = options[:values]
    states = states.keys if states.is_a?(Hash)
    CequelStatefulEnum::Machine.new(self, name, states, &block)
  end
end