module Contineo
Public Class Methods
configurations()
click to toggle source
# File lib/contineo.rb, line 30 def self.configurations begin YAML.load_file(CONFIG_PATH) rescue NameError => e YAML.load_file("config/database.yml") end end
create_connections()
click to toggle source
# File lib/contineo.rb, line 38 def self.create_connections configurations.each do |db_env, connection_hash| if other_than_application_db?(db_env) && ::Rails.env == env(db_env) define_db_connection_class(db_env) end end end
db(db_env)
click to toggle source
# File lib/contineo.rb, line 6 def self.db(db_env) db_env.split('_'+ env(db_env)).first.camelcase end
define_db_connection_class(db_env)
click to toggle source
# File lib/contineo.rb, line 18 def self.define_db_connection_class(db_env) klass = Object.const_set(db(db_env), Class.new(ActiveRecord::Base) { self.abstract_class = true def self.inherited(base) contineo end }) klass.define_singleton_method(:contineo) { establish_connection db_env.to_sym } klass end
env(db_env)
click to toggle source
# File lib/contineo.rb, line 10 def self.env(db_env) db_env.split('_').last end
inherited(base)
click to toggle source
# File lib/contineo.rb, line 21 def self.inherited(base) contineo end
other_than_application_db?(db_env)
click to toggle source
# File lib/contineo.rb, line 14 def self.other_than_application_db?(db_env) db_env.split('_').size > 1 end
version()
click to toggle source
Returns the version of the currently loaded Contineo
as a Gem::Version
# File lib/contineo/version.rb, line 3 def self.version Gem::Version.new "0.1.3" end