Class: CPEE::StateMachine

Inherits:
Object
  • Object
show all
Defined in:
lib/cpee/statemachine.rb

Instance Method Summary collapse

Constructor Details

#initialize(file, readonly, &state) ⇒ StateMachine

Returns a new instance of StateMachine.



4
5
6
7
8
# File 'lib/cpee/statemachine.rb', line 4

def initialize(file,readonly,&state)
  @states = XML::Smart.open_unprotected(file)
  @state = state
  @readonly = readonly
end

Instance Method Details

#readonly?(id) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/cpee/statemachine.rb', line 15

def readonly?(id)
  @readonly.include? @state.call(id)
end

#setable?(id, nval) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
13
# File 'lib/cpee/statemachine.rb', line 10

def setable?(id,nval)
  cval = @state.call(id)
  @states.find("/states/setable/#{cval}[#{nval}]").length > 0
end