Class: Datafactory::Connectors::SequelConnector

Inherits:
Base
  • Object
show all
Defined in:
lib/datafactory/connectors/sequel.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

configured_by?, #require_factories, #require_models

Constructor Details

#initialize(domain) ⇒ SequelConnector

Returns a new instance of SequelConnector.



12
13
14
15
# File 'lib/datafactory/connectors/sequel.rb', line 12

def initialize(domain)
  @domain = domain
  @db_config = YAML::load(File.open("#{@domain}/#{self.class.config}"))
end

Class Method Details

.configObject



17
18
19
# File 'lib/datafactory/connectors/sequel.rb', line 17

def self.config
  "sequel.yaml"
end

Instance Method Details

#create_dbObject



39
40
41
# File 'lib/datafactory/connectors/sequel.rb', line 39

def create_db
  raise "not implemented"
end

#drop_dbObject



35
36
37
# File 'lib/datafactory/connectors/sequel.rb', line 35

def drop_db
  raise "not implemented"
end

#migrateObject



31
32
33
# File 'lib/datafactory/connectors/sequel.rb', line 31

def migrate
  Sequel::Migrator.apply(@db, "#{@domain}/migrate")
end

#setup(opts) ⇒ Object



21
22
23
24
25
26
27
28
29
# File 'lib/datafactory/connectors/sequel.rb', line 21

def setup(opts)
  @db = Sequel.connect(@db_config["uri"])
  Sequel::Model.db = @db
  if opts[:migrate]
    migrate
  end
  require_models
  require_factories
end