Module: Lightswitch::ScheduleCommon

Included in:
ScheduleCollectionMixin, ScheduleMixin
Defined in:
lib/lightswitch/schedule_mixins.rb

Instance Method Summary collapse

Instance Method Details

#decode_state(state_string) ⇒ Object



8
9
10
# File 'lib/lightswitch/schedule_mixins.rb', line 8

def decode_state(state_string)
  state_string == 'up'
end

#encode_state(up_boolean) ⇒ Object



4
5
6
# File 'lib/lightswitch/schedule_mixins.rb', line 4

def encode_state(up_boolean)
  up_boolean ? 'up' : 'down'
end

#get_schedule_state_change(reference_state, at_time) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/lightswitch/schedule_mixins.rb', line 12

def get_schedule_state_change(reference_state, at_time)
  scheduled_state_encoded = encode_state(up?(at_time))
  if (scheduled_state_encoded != reference_state)
    StateChange.new(scheduled_state_encoded, at_time)
  else
    nil
  end
end