Class: Radiodan::Builder

Inherits:
Object
  • Object
show all
Defined in:
lib/radiodan/builder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize {|_self| ... } ⇒ Builder

Returns a new instance of Builder.

Yields:

  • (_self)

Yield Parameters:



12
13
14
15
16
17
# File 'lib/radiodan/builder.rb', line 12

def initialize(&blk)
  @middleware = []
  @player = Player.new

  yield(self) if block_given?
end

Instance Attribute Details

#middlewareObject (readonly)

Returns the value of attribute middleware.



10
11
12
# File 'lib/radiodan/builder.rb', line 10

def middleware
  @middleware
end

#playerObject (readonly)

Returns the value of attribute player.



10
11
12
# File 'lib/radiodan/builder.rb', line 10

def player
  @player
end

Instance Method Details

#adapter(klass, *config) ⇒ Object



23
24
25
# File 'lib/radiodan/builder.rb', line 23

def adapter(klass, *config)
  player.adapter = register(klass, 'adapter', *config)
end

#call_middleware!Object



36
37
38
# File 'lib/radiodan/builder.rb', line 36

def call_middleware!
  middleware.each{ |m| m.call(@player) }
end

#log(log, level = nil) ⇒ Object



31
32
33
34
# File 'lib/radiodan/builder.rb', line 31

def log(log, level=nil)
  Logging.output = log
  Logging.level  = level unless level.nil?
end

#playlist(new_playlist) ⇒ Object



27
28
29
# File 'lib/radiodan/builder.rb', line 27

def playlist(new_playlist)
  use :playlist_to_start, new_playlist
end

#use(klass, *config) ⇒ Object



19
20
21
# File 'lib/radiodan/builder.rb', line 19

def use(klass, *config)
  @middleware << register(klass, 'middleware', *config)
end