sessionm-cassandra_object 2.4.8 → 2.4.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -59,17 +59,39 @@ module CassandraObject
59
59
  end
60
60
 
61
61
  @@schema = nil
62
- @@connection_pool = nil
63
- def self.connection_pool
64
- @@connection_pool ||=
62
+ @@async_connection_pool = nil
63
+ @@sync_connection_pool = nil
64
+ def self.async_connection_pool
65
+ @@async_connection_pool ||=
65
66
  begin
66
67
  adapter_method = Proc.new do
67
- EM.reactor_running? ? self.new_event_machine_connection : self.new_connection
68
+ self.new_event_machine_connection
68
69
  end
69
70
  spec = ActiveRecord::Base::ConnectionSpecification.new self.connection_spec, adapter_method
70
- WithConnection::ConnectionPool.new "cassandra", spec
71
+ WithConnection::ConnectionPool.new "async cassandra", spec
71
72
  end
72
73
  end
74
+ def async_connection_pool
75
+ self.class.async_connection_pool
76
+ end
77
+
78
+ def self.sync_connection_pool
79
+ @@sync_connection_pool ||=
80
+ begin
81
+ adapter_method = Proc.new do
82
+ self.new_connection
83
+ end
84
+ spec = ActiveRecord::Base::ConnectionSpecification.new self.connection_spec, adapter_method
85
+ WithConnection::ConnectionPool.new "sync cassandra", spec
86
+ end
87
+ end
88
+ def sync_connection_pool
89
+ self.class.sync_connection_pool
90
+ end
91
+
92
+ def self.connection_pool
93
+ EM.reactor_running? ? self.async_connection_pool : self.sync_connection_pool
94
+ end
73
95
  def connection_pool
74
96
  self.class.connection_pool
75
97
  end
@@ -88,7 +110,14 @@ module CassandraObject
88
110
  end
89
111
 
90
112
  def self.disconnect!
91
- self.connection_pool.disconnect!
113
+ self.async_connection_pool.disconnect! if @@async_connection_pool
114
+ self.sync_connection_pool.disconnect! if @@sync_connection_pool
115
+ @@sync_connection_pool = nil
116
+ @@async_connection_pool = nil
117
+ end
118
+
119
+ def disconnect!
120
+ self.class.disconnect!
92
121
  end
93
122
 
94
123
  def connection
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'sessionm-cassandra_object'
5
- s.version = '2.4.8'
5
+ s.version = '2.4.9'
6
6
  s.description = 'Cassandra ActiveModel'
7
7
  s.summary = 'Cassandra ActiveModel'
8
8
 
metadata CHANGED
@@ -1,75 +1,73 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: sessionm-cassandra_object
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 2
7
- - 4
8
- - 8
9
- version: 2.4.8
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.4.9
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - Michael Koziarski
13
9
  - gotime
14
10
  - sessionm
15
11
  autorequire:
16
12
  bindir: bin
17
13
  cert_chain: []
18
-
19
- date: 2013-06-04 00:00:00 -04:00
20
- default_executable:
21
- dependencies:
22
- - !ruby/object:Gem::Dependency
14
+ date: 2013-06-05 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
23
17
  name: rails
24
- prerelease: false
25
- requirement: &id001 !ruby/object:Gem::Requirement
26
- requirements:
18
+ requirement: !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
27
21
  - - ~>
28
- - !ruby/object:Gem::Version
29
- segments:
30
- - 3
31
- - 0
32
- - 9
22
+ - !ruby/object:Gem::Version
33
23
  version: 3.0.9
34
24
  type: :runtime
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
37
- name: sessionm-cassandra
38
25
  prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- segments:
44
- - 1
45
- - 0
46
- - 1
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - ~>
30
+ - !ruby/object:Gem::Version
31
+ version: 3.0.9
32
+ - !ruby/object:Gem::Dependency
33
+ name: sessionm-cassandra
34
+ requirement: !ruby/object:Gem::Requirement
35
+ none: false
36
+ requirements:
37
+ - - ! '>='
38
+ - !ruby/object:Gem::Version
47
39
  version: 1.0.1
48
40
  type: :runtime
49
- version_requirements: *id002
50
- - !ruby/object:Gem::Dependency
51
- name: bundler
52
41
  prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- segments:
58
- - 1
59
- - 0
60
- - 0
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.0.1
48
+ - !ruby/object:Gem::Dependency
49
+ name: bundler
50
+ requirement: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
61
55
  version: 1.0.0
62
56
  type: :development
63
- version_requirements: *id003
57
+ prerelease: false
58
+ version_requirements: !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ! '>='
62
+ - !ruby/object:Gem::Version
63
+ version: 1.0.0
64
64
  description: Cassandra ActiveModel
65
65
  email: klange@sessionm.com
66
66
  executables: []
67
-
68
67
  extensions: []
69
-
70
- extra_rdoc_files:
68
+ extra_rdoc_files:
71
69
  - README.markdown
72
- files:
70
+ files:
73
71
  - .gitignore
74
72
  - CHANGELOG
75
73
  - Gemfile
@@ -161,41 +159,31 @@ files:
161
159
  - test/types/time_type_test.rb
162
160
  - test/types/utf8_string_type_test.rb
163
161
  - test/validations_test.rb
164
- has_rdoc: true
165
162
  homepage: http://github.com/sessionm/cassandra_object
166
163
  licenses: []
167
-
168
164
  post_install_message:
169
165
  rdoc_options: []
170
-
171
- require_paths:
166
+ require_paths:
172
167
  - lib
173
- required_ruby_version: !ruby/object:Gem::Requirement
174
- requirements:
175
- - - ">="
176
- - !ruby/object:Gem::Version
177
- segments:
178
- - 1
179
- - 9
180
- - 2
168
+ required_ruby_version: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
181
173
  version: 1.9.2
182
- required_rubygems_version: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - ">="
185
- - !ruby/object:Gem::Version
186
- segments:
187
- - 1
188
- - 3
189
- - 5
174
+ required_rubygems_version: !ruby/object:Gem::Requirement
175
+ none: false
176
+ requirements:
177
+ - - ! '>='
178
+ - !ruby/object:Gem::Version
190
179
  version: 1.3.5
191
180
  requirements: []
192
-
193
181
  rubyforge_project:
194
- rubygems_version: 1.3.6
182
+ rubygems_version: 1.8.23
195
183
  signing_key:
196
184
  specification_version: 3
197
185
  summary: Cassandra ActiveModel
198
- test_files:
186
+ test_files:
199
187
  - test/README
200
188
  - test/active_model_test.rb
201
189
  - test/attributes_test.rb