class Unisms::Router::Random

Attributes

adapters[RW]

Public Class Methods

new(adapters = nil) click to toggle source
# File lib/unisms/router/random.rb, line 7
def initialize(adapters = nil)
        @adapters = adapters.is_a?(Array) ? adapters : [adapters].compact
end

Public Instance Methods

load_internal_adapters() click to toggle source
# File lib/unisms/router/random.rb, line 19
def load_internal_adapters
        adapter_module = Unisms::Adapter
        klasses = adapter_module.constants.reject{ |c| c == :Base }.select { |c| adapter_module.const_get(c).is_a? Class }.map {|c| adapter_module.const_get c }
        @adapters = klasses.map { |klass| klass.new rescue nil }.compact
end
route() click to toggle source
# File lib/unisms/router/random.rb, line 11
def route
        @adapters.sample
end