class Juvet::Configuration::Adapter

Attributes

class_name[R]
options[R]
type[R]

Public Class Methods

new(type=nil, options={}) click to toggle source
# File lib/juvet/configuration/adapter.rb, line 8
def initialize(type=nil, options={})
  opts = (options || {}).dup

  @type = type || :null
  @options = opts
  @class_name = Juvet::String.new("#{self.type}_adapter").classify
end

Public Instance Methods

build() click to toggle source
# File lib/juvet/configuration/adapter.rb, line 16
def build
  load_adapter
  Juvet::Adapters.const_get(class_name)
end

Private Instance Methods

load_adapter() click to toggle source
# File lib/juvet/configuration/adapter.rb, line 23
def load_adapter
  require "juvet/adapters/#{type}_adapter"
rescue LoadError => e
  raise LoadError.new("Cannot find Juvet adapter '#{type}' (#{e.message})")
end