ar-octopus 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -127,11 +127,12 @@ Sometimes, when a connection isn't used for much time, this will makes ActiveRec
127
127
  This will tell Octopus to verify the connection before sending the query.
128
128
 
129
129
  ## Mixing Octopus with the Rails multiple database model
130
- Octopus will respect if you declare some model to use a specific connection, with the rails syntax, like this example:
130
+ If you want to set a custom connection to a specific model, use this syntax:
131
131
 
132
132
  #This class sets its own connection
133
+ # establish_connection will not work, use octopus_establish_connection instead.
133
134
  class CustomConnection < ActiveRecord::Base
134
- establish_connection(:adapter => "mysql", :database => "octopus_shard2")
135
+ octopus_establish_connection(:adapter => "mysql", :database => "octopus_shard2")
135
136
  end
136
137
 
137
138
  ## Contributing with Octopus
data/Rakefile CHANGED
@@ -37,7 +37,7 @@ begin
37
37
  gem.add_development_dependency "jeweler", ">= 1.4"
38
38
  gem.add_development_dependency "actionpack", ">= 2.3"
39
39
  gem.add_dependency('activerecord', '>= 2.3')
40
- gem.version = "0.2.1"
40
+ gem.version = "0.2.2"
41
41
  end
42
42
  Jeweler::GemcutterTasks.new
43
43
  rescue LoadError
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{ar-octopus}
8
- s.version = "0.2.1"
8
+ s.version = "0.2.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Thiago Pradi", "Mike Perham"]
12
- s.date = %q{2010-10-31}
12
+ s.date = %q{2010-11-03}
13
13
  s.description = %q{This gem allows you to use sharded databases with ActiveRecord. this also provides a interface for replication and for running migrations with multiples shards.}
14
14
  s.email = %q{tchandy@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -85,6 +85,11 @@ module Octopus::Model
85
85
  def sharded_model()
86
86
  write_inheritable_attribute(:sharded, true)
87
87
  end
88
+
89
+ def octopus_establish_connection(spec = nil)
90
+ write_inheritable_attribute(:establish_connection, true)
91
+ establish_connection(spec)
92
+ end
88
93
  end
89
94
  end
90
95
 
@@ -21,7 +21,7 @@ end
21
21
 
22
22
  #This class sets its own connection
23
23
  class CustomConnection < ActiveRecord::Base
24
- establish_connection(:adapter => "mysql", :database => "octopus_shard2", :username => "root", :password => "")
24
+ octopus_establish_connection(:adapter => "mysql", :database => "octopus_shard2", :username => "root", :password => "")
25
25
  end
26
26
 
27
27
  #This items belongs to a client
@@ -173,8 +173,7 @@ describe Octopus::Model do
173
173
 
174
174
  describe "AR basic methods" do
175
175
  it "establish_connection" do
176
- pending("TODO")
177
- # CustomConnection.connection.current_database.should == "octopus_shard2"
176
+ CustomConnection.connection.current_database.should == "octopus_shard2"
178
177
  end
179
178
 
180
179
  it "increment" do
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ar-octopus
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 2
9
- - 1
10
- version: 0.2.1
9
+ - 2
10
+ version: 0.2.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Thiago Pradi
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2010-10-31 00:00:00 -02:00
19
+ date: 2010-11-03 00:00:00 -02:00
20
20
  default_executable:
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency