Module: Octospy::Recordable

Defined in:
lib/octospy/recordable.rb,
lib/octospy/recordable/channel.rb

Defined Under Namespace

Classes: Channel

Class Method Summary collapse

Class Method Details

.add_channel(name) ⇒ Object



18
19
20
# File 'lib/octospy/recordable.rb', line 18

def add_channel(name)
  channels << Channel.new(name) unless channels_include? name
end

.channel(name) ⇒ Object



26
27
28
29
30
31
32
33
# File 'lib/octospy/recordable.rb', line 26

def channel(name)
  if channels_include? name
    find_channel name
  else
    add_channel name
    find_channel name
  end
end

.channelsObject



6
7
8
# File 'lib/octospy/recordable.rb', line 6

def channels
  @channels ||= []
end

.channels_include?(name) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/octospy/recordable.rb', line 10

def channels_include?(name)
  !!find_channel(name)
end

.find_channel(name) ⇒ Object



14
15
16
# File 'lib/octospy/recordable.rb', line 14

def find_channel(name)
  channels.find { |channel| channel.name.to_s == name.to_s }
end

.remove_channel(name) ⇒ Object



22
23
24
# File 'lib/octospy/recordable.rb', line 22

def remove_channel(name)
  channels.delete_if { |channel| channel.name.to_s == name.to_s }
end