module Dumpr::Driver
Public Class Methods
find(driver)
click to toggle source
# File lib/dumpr/driver.rb, line 9 def find(driver) driver_file = "dumpr/driver/#{driver}" require(driver_file) const_ar = driver.to_s.split("/").reject{|i| i==""}.collect {|i| i.capitalize.gsub(/_(.)/) {$1.upcase} } klass_str = const_ar.join('::') begin klass = const_ar.inject(self) do |mod, const_name| mod.const_get(const_name) end rescue NameError => e raise e raise BadConfig, "could not find `#{klass_str}' in `#{driver_file}'" end raise BadConfig, "#{klass.name} is not a type of Dumpr::Driver!" unless klass < Dumpr::Driver::Base return klass rescue LoadError raise BadConfig, "failed to load '#{driver_file}' !'" end
Private Instance Methods
find(driver)
click to toggle source
# File lib/dumpr/driver.rb, line 9 def find(driver) driver_file = "dumpr/driver/#{driver}" require(driver_file) const_ar = driver.to_s.split("/").reject{|i| i==""}.collect {|i| i.capitalize.gsub(/_(.)/) {$1.upcase} } klass_str = const_ar.join('::') begin klass = const_ar.inject(self) do |mod, const_name| mod.const_get(const_name) end rescue NameError => e raise e raise BadConfig, "could not find `#{klass_str}' in `#{driver_file}'" end raise BadConfig, "#{klass.name} is not a type of Dumpr::Driver!" unless klass < Dumpr::Driver::Base return klass rescue LoadError raise BadConfig, "failed to load '#{driver_file}' !'" end