class ASF::Board::ShepherdStream

source for shepherd information, yields a stream of director names in random order

Public Class Methods

new() click to toggle source
Calls superclass method
# File lib/whimsy/asf/board.rb, line 50
def initialize
  @directors = ASF::Service['board'].members

  super do |generator|
    list = []
    loop do
      list = @directors.shuffle if list.empty?
      generator.yield list.pop.public_name
    end
  end
end

Public Instance Methods

for(pmc) click to toggle source
# File lib/whimsy/asf/board.rb, line 62
def for(pmc)
  chair = pmc.chair

  if @directors.include? chair
    "#{chair.public_name}"
  else
    "#{chair.public_name} / #{self.next.split(' ').first}"
  end
end