module Fabes::ConnectionHandling
Public Class Methods
redis_connection(db)
click to toggle source
# File lib/fabes/connection_adapters/redis_adapter.rb, line 3 def self.redis_connection(db) require 'redis' redis = ::Redis.new db ConnectionAdapters::RedisAdapter.new redis end
Public Instance Methods
connection_url_to_hash(url)
click to toggle source
# File lib/fabes/connection_adapters/abstract_adapter.rb, line 16 def connection_url_to_hash(url) url ||= '' uri = URI.parse url spec = { host: uri.host, port: uri.port, adapter: uri.scheme, username: uri.user, password: uri.password, database: uri.path.sub(%r{^/}, '') } spec.reject! {|_, value| !value} {adapter: 'redis'}.merge spec end
establish_connection(db)
click to toggle source
# File lib/fabes/connection_adapters/abstract_adapter.rb, line 6 def establish_connection(db) database = connection_url_to_hash(db) adapter = database.delete :adapter adapter_method = "#{adapter}_connection" send adapter_method, database rescue raise "Could not find #{adapter} adapter!" end