class Deltacloud::StateMachine::State

Attributes

name[R]
transitions[R]

Public Class Methods

new(machine, name) click to toggle source
# File lib/deltacloud/models/state_machine.rb, line 67
def initialize(machine, name)
  @machine = machine
  @name    = name
  @transitions = []
end

Public Instance Methods

from(*states) click to toggle source
# File lib/deltacloud/models/state_machine.rb, line 84
def from(*states)
  states.each do |s|
    initial = @machine.state(s)
    trans = initial.to self.name
    trans.automatically
  end
end
to(destination_name) click to toggle source
# File lib/deltacloud/models/state_machine.rb, line 77
def to(destination_name)
  destination = @machine.state(destination_name)
  transition = Transition.new( @machine, destination )
  @transitions << transition
  transition
end
to_s() click to toggle source
# File lib/deltacloud/models/state_machine.rb, line 73
def to_s
  self.name.to_s
end