data_fabric 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -21,23 +21,23 @@ You describe the topology for your database infrastructure in your model(s).
21
21
  Different models can use different topologies.
22
22
 
23
23
  class MyHugeVolumeOfDataModel < ActiveRecord::Base
24
- connection_topology :replicated => true, :shard_by => :city
24
+ data_fabric :replicated => true, :shard_by => :city
25
25
  end
26
26
 
27
27
  There are four supported modes of operation, depending on the options given to the
28
- connection_topology method. The plugin will look for connections in your
28
+ data_fabric method. The plugin will look for connections in your
29
29
  config/database.yml with the following convention:
30
30
 
31
31
  No connection topology:
32
32
  #{environment} - this is the default, as with ActiveRecord, e.g. "production"
33
33
 
34
- connection_topology :replicated => true
34
+ data_fabric :replicated => true
35
35
  #{environment}_#{role} - no sharding, just replication, where role is "master" or "slave", e.g. "production_master"
36
36
 
37
- connection_topology :shard_by => :city
37
+ data_fabric :shard_by => :city
38
38
  #{group}_#{shard}_#{environment} - sharding, no replication, e.g. "city_austin_production"
39
39
 
40
- connection_topology :replicated => true, :shard_by => :city
40
+ data_fabric :replicated => true, :shard_by => :city
41
41
  #{group}_#{shard}_#{environment}_#{role} - sharding with replication, e.g. "city_austin_production_master"
42
42
 
43
43
 
data/Rakefile CHANGED
@@ -14,15 +14,6 @@ Echoe.new 'data_fabric' do |p|
14
14
  p.include_rakefile = true
15
15
  end
16
16
 
17
- require 'rake/testtask'
18
-
19
- RAILS_ROOT=File.dirname(__FILE__)
20
-
21
- Rake::TestTask.new do |t|
22
- t.test_files = FileList['test/*_test.rb']
23
- t.verbose = true
24
- end
25
-
26
17
  task :pretest do
27
18
  setup(false)
28
19
  end
data/TESTING.rdoc CHANGED
@@ -1,6 +1,4 @@
1
- Because of what it does, data_fabric is difficult to test easily.
2
-
3
- There are two layers of tests: unit tests and integration tests.
1
+ data_fabric has two layers of tests: unit tests and integration tests.
4
2
 
5
3
 
6
4
  == Running the Unit Tests
@@ -22,9 +20,9 @@ Run the Rake task to prepare the application for testing. This will copy the la
22
20
  to vendor/plugins, delete existing databases and migrate all the databases from scratch. You should
23
21
  then be able to run the example application's tests.
24
22
 
25
- cd example
26
- rake app:prepare
27
- rake test
23
+ cd example
24
+ rake app:prepare
25
+ rake test
28
26
 
29
27
 
30
28
  == Submitting Bugs
data/data_fabric.gemspec CHANGED
@@ -1,18 +1,18 @@
1
1
 
2
- # Gem::Specification for Data_fabric-1.0.0
2
+ # Gem::Specification for Data_fabric-1.0.1
3
3
  # Originally generated by Echoe
4
4
 
5
5
  --- !ruby/object:Gem::Specification
6
6
  name: data_fabric
7
7
  version: !ruby/object:Gem::Version
8
- version: 1.0.0
8
+ version: 1.0.1
9
9
  platform: ruby
10
10
  authors:
11
11
  - Mike Perham
12
12
  autorequire:
13
13
  bindir: bin
14
14
 
15
- date: 2008-07-08 00:00:00 -05:00
15
+ date: 2008-07-09 00:00:00 -05:00
16
16
  default_executable:
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
Binary file
Binary file
Binary file
@@ -1,5 +1,5 @@
1
1
  module DataFabric
2
2
  module Version
3
- STRING = "1.0.0"
3
+ STRING = "1.0.1"
4
4
  end
5
5
  end
data/lib/data_fabric.rb CHANGED
@@ -5,21 +5,21 @@ require 'active_record/version'
5
5
  # You need to describe the topology for your database infrastructure in your model(s). As with ActiveRecord normally, different models can use different topologies.
6
6
  #
7
7
  # class MyHugeVolumeOfDataModel < ActiveRecord::Base
8
- # connection_topology :replicated => true, :shard_by => :city
8
+ # data_fabric :replicated => true, :shard_by => :city
9
9
  # end
10
10
  #
11
- # There are four supported modes of operation, depending on the options given to the connection_topology method. The plugin will look for connections in your config/database.yml with the following convention:
11
+ # There are four supported modes of operation, depending on the options given to the data_fabric method. The plugin will look for connections in your config/database.yml with the following convention:
12
12
  #
13
13
  # No connection topology:
14
14
  # #{environment} - this is the default, as with ActiveRecord, e.g. "production"
15
15
  #
16
- # connection_topology :replicated => true
16
+ # data_fabric :replicated => true
17
17
  # #{environment}_#{role} - no sharding, just replication, where role is "master" or "slave", e.g. "production_master"
18
18
  #
19
- # connection_topology :shard_by => :city
19
+ # data_fabric :shard_by => :city
20
20
  # #{group}_#{shard}_#{environment} - sharding, no replication, e.g. "city_austin_production"
21
21
  #
22
- # connection_topology :replicated => true, :shard_by => :city
22
+ # data_fabric :replicated => true, :shard_by => :city
23
23
  # #{group}_#{shard}_#{environment}_#{role} - sharding with replication, e.g. "city_austin_production_master"
24
24
  #
25
25
  #
@@ -92,13 +92,14 @@ module DataFabric
92
92
 
93
93
  # Class methods injected into ActiveRecord::Base
94
94
  module ClassMethods
95
- def connection_topology(options)
95
+ def data_fabric(options)
96
96
  proxy = DataFabric::ConnectionProxy.new(self, options)
97
97
  ActiveRecord::Base.active_connections[name] = proxy
98
98
 
99
99
  raise ArgumentError, "data_fabric does not support ActiveRecord's allow_concurrency = true" if allow_concurrency
100
100
  DataFabric.logger.info "Creating data_fabric proxy for class #{name}"
101
101
  end
102
+ alias :connection_topology :data_fabric # legacy
102
103
  end
103
104
 
104
105
  class StringProxy
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: data_fabric
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Perham
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-07-08 00:00:00 -05:00
12
+ date: 2008-07-09 00:00:00 -05:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency