module Bluebird

Constants

VERSION

Public Class Methods

configure() { |Config| ... } click to toggle source
# File lib/bluebird.rb, line 16
def configure
  yield(Config)
end
modify(status, opts = {}) click to toggle source
# File lib/bluebird.rb, line 20
def modify(status, opts = {})
  tweet = Bluebird::Tweet.new(status, opts)
  run_strategies(tweet)
  tweet.status
end

Private Class Methods

run_strategies(tweet) click to toggle source
# File lib/bluebird.rb, line 28
def run_strategies(tweet)
  Config.strategies.each do |strategy|
    strategy_by_symbol(strategy).run(tweet, Config)
  end
end
strategies_module() click to toggle source
# File lib/bluebird.rb, line 52
def strategies_module
  @strategies_module ||= Object.const_get('Bluebird').const_get('Strategies')
end
strategy_by_symbol(symbol) click to toggle source
# File lib/bluebird.rb, line 48
def strategy_by_symbol(symbol)
  strategies_module.const_get(symbol_to_class(symbol)).const_get('Strategy')
end
symbol_to_class(symbol) click to toggle source
# File lib/bluebird.rb, line 34
def symbol_to_class(symbol)
  symbol.to_s.split('_').map do |string|
    i = 0
    string.chars.map do |char|
      i += 1
      if i.eql?(1)
        char.upcase
      else
        char
      end
    end
  end.join
end