class Lita::WindowSchedule

Attributes

cmd[R]
id[R]
room_id[R]
user_id[R]

Public Class Methods

new(id:, room_id:, user_id:, cmd:) click to toggle source
# File lib/lita/window_schedule.rb, line 5
def initialize(id:, room_id:, user_id:, cmd:)
  @id = id
  @room_id, @user_id = room_id, user_id
  @cmd = cmd.new if cmd
end

Public Instance Methods

buffer_minutes() click to toggle source
# File lib/lita/window_schedule.rb, line 15
def buffer_minutes
  @cmd.buffer_minutes
end
duration_minutes() click to toggle source
# File lib/lita/window_schedule.rb, line 11
def duration_minutes
  @cmd.duration_minutes
end
human() click to toggle source
# File lib/lita/window_schedule.rb, line 27
def human
  "Sliding Window (id: #{@id}): #{@cmd.name}"
end
name() click to toggle source
# File lib/lita/window_schedule.rb, line 19
def name
  @cmd.name
end
run(*args) click to toggle source
# File lib/lita/window_schedule.rb, line 23
def run(*args)
  @cmd.run(*args)
end
to_json() click to toggle source
# File lib/lita/window_schedule.rb, line 35
def to_json
  {
    id: @id,
    cmd: @cmd.name,
    user_id: @user_id,
    room_id: @room_id,
  }.to_json
end
valid?() click to toggle source
# File lib/lita/window_schedule.rb, line 31
def valid?
  room_id && user_id && valid_cmd?
end

Private Instance Methods

valid_cmd?() click to toggle source
# File lib/lita/window_schedule.rb, line 46
def valid_cmd?
  cmd.respond_to?(:run)
end