smith 0.7.4 → 0.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 79102bfef4bada48d73758f32078771d6100e759
4
- data.tar.gz: 8405a9460440fdc43abc5072f0f1566848a30741
3
+ metadata.gz: 96cb51ec7c1b312e9579ed53e172fb9007dade01
4
+ data.tar.gz: 9a18b232612707ff1bb428e1885e3ec34826cdaf
5
5
  SHA512:
6
- metadata.gz: 201c524f5a686fe1372d264b46ee665a78143ea17335ad7eab6bf50cd6ea27c424f991a5037224f65c03521442b3911cbd121fdcabad3deb56e0629ee390ebcc
7
- data.tar.gz: 087cd24ebce5fca132d8ac5b79a1e4054efeb91bb52ce2a2bdcd3106a2655b9553d141654e9ce5c95a2e86df6e21db2d4be8df2df9573d544c0695efa65a22eb
6
+ metadata.gz: 63f78bfab75adfe3399b6f5f7dbb6e6e902c3e38e0ef365740c31259eabb1e934be252cd2152816d14bd390dfb596946ca3c80a4c60a56a0098a892b6af68bbf
7
+ data.tar.gz: cfd8e95af6b81ed3f2e0fbf0a456e2f31f718e0d0dc7a67386716abb294d647d5348fc478e794e8c372455e09b66917d89289054067daf8b6a493c6d50e518df
@@ -93,7 +93,7 @@ module Smith
93
93
  end
94
94
 
95
95
  def dead(agent_data)
96
- agent_exists?(agent_data.uuid, ->{}) do |agent_process|
96
+ agent_exists?(agent_data.uuid) do |agent_process|
97
97
  if agent_process.no_process_running
98
98
  logger.fatal { "Agent is dead: #{agent_data.uuid}" }
99
99
  end
@@ -111,7 +111,7 @@ module Smith
111
111
  end
112
112
  end
113
113
 
114
- def agent_exists?(uuid, error_proc=nil, &blk)
114
+ def agent_exists?(uuid, error_proc=->{}, &blk)
115
115
  agent = @agent_processes[uuid]
116
116
  if agent
117
117
  blk.call(agent)
data/lib/smith/logger.rb CHANGED
@@ -69,7 +69,7 @@ module Smith
69
69
  end
70
70
 
71
71
  def __reload
72
- @logger = Logging.logger[self || 'main']
72
+ @logger = Logging.logger[self.class.to_s || 'main']
73
73
  @logger.trace = @@__trace
74
74
  @reload = false
75
75
  end
@@ -207,11 +207,26 @@ module Smith
207
207
 
208
208
  attr_accessor :metadata
209
209
 
210
+ def m(o)
211
+ (o.methods - Object.methods).sort
212
+ end
213
+
210
214
  def initialize(metadata, data, opts={}, requeue_opts, &blk)
211
215
  @metadata = metadata
212
216
  @reply_queue = opts[:reply_queue]
217
+ # @queue_name = (metadata.methods - Object.methods).sort
213
218
  @requeue_opts = requeue_opts
214
219
 
220
+ pp m(metadata)
221
+ puts '====================='
222
+ pp m(metadata.channel)
223
+ puts '====================='
224
+ pp metadata.channel.class
225
+ puts '====================='
226
+ pp m(metadata.channel.queue)
227
+ puts '====================='
228
+ pp metadata.channel.queue.status
229
+
215
230
  @acl_type_cache = AclTypeCache.instance
216
231
 
217
232
  @time = Time.now
@@ -241,7 +256,7 @@ module Smith
241
256
  if @metadata.reply_to
242
257
  @reply_queue.publish((blk) ? blk.call : acl, :correlation_id => @metadata.message_id)
243
258
  else
244
- logger.error { "You are replying to a message that has no reply_to: #{@metadata.exchange}." }
259
+ logger.error { "Cannot reply to a message that has no reply_to: #{@metadata.exchange}." }
245
260
  end
246
261
  end
247
262
 
@@ -97,7 +97,7 @@ module Smith
97
97
 
98
98
  @timeout ||= Timeout.new(Smith.config.smith.timeout, :queue_name => @queue_def.denormalise)
99
99
 
100
- reply_queue = opts.delete(:reply_queue_name) { random("#{@queue_def.denormalise}.") }
100
+ reply_queue = opts.clone.delete(:reply_queue_name) { random("#{@queue_def.denormalise}.") }
101
101
 
102
102
  queue_def = QueueDefinition.new(reply_queue, opts.merge(:auto_delete => true, :durable => false))
103
103
  logger.debug { "reply queue: #{queue_def.denormalise}" }
data/lib/smith/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Smith
2
- VERSION = "0.7.4"
2
+ VERSION = "0.7.6"
3
3
  end
metadata CHANGED
@@ -1,35 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smith
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.4
4
+ version: 0.7.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Heycock
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-04 00:00:00.000000000 Z
11
+ date: 2015-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: oj
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '2.11'
20
- - - "~>"
21
- - !ruby/object:Gem::Version
22
- version: 2.11.4
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '2.11'
30
- - - "~>"
31
- - !ruby/object:Gem::Version
32
- version: 2.11.4
33
13
  - !ruby/object:Gem::Dependency
34
14
  name: amqp
35
15
  requirement: !ruby/object:Gem::Requirement
@@ -205,33 +185,53 @@ dependencies:
205
185
  - !ruby/object:Gem::Version
206
186
  version: '2.1'
207
187
  - !ruby/object:Gem::Dependency
208
- name: curses
188
+ name: toml-rb
209
189
  requirement: !ruby/object:Gem::Requirement
210
190
  requirements:
211
- - - '='
191
+ - - "~>"
212
192
  - !ruby/object:Gem::Version
213
- version: 1.0.1
193
+ version: '0.3'
214
194
  type: :runtime
215
195
  prerelease: false
216
196
  version_requirements: !ruby/object:Gem::Requirement
217
197
  requirements:
218
- - - '='
198
+ - - "~>"
219
199
  - !ruby/object:Gem::Version
220
- version: 1.0.1
200
+ version: '0.3'
221
201
  - !ruby/object:Gem::Dependency
222
- name: toml-rb
202
+ name: oj
223
203
  requirement: !ruby/object:Gem::Requirement
224
204
  requirements:
225
205
  - - "~>"
226
206
  - !ruby/object:Gem::Version
227
- version: '0.3'
207
+ version: '2.11'
208
+ - - ">="
209
+ - !ruby/object:Gem::Version
210
+ version: 2.11.4
228
211
  type: :runtime
229
212
  prerelease: false
230
213
  version_requirements: !ruby/object:Gem::Requirement
231
214
  requirements:
232
215
  - - "~>"
233
216
  - !ruby/object:Gem::Version
234
- version: '0.3'
217
+ version: '2.11'
218
+ - - ">="
219
+ - !ruby/object:Gem::Version
220
+ version: 2.11.4
221
+ - !ruby/object:Gem::Dependency
222
+ name: curses
223
+ requirement: !ruby/object:Gem::Requirement
224
+ requirements:
225
+ - - '='
226
+ - !ruby/object:Gem::Version
227
+ version: 1.0.1
228
+ type: :runtime
229
+ prerelease: false
230
+ version_requirements: !ruby/object:Gem::Requirement
231
+ requirements:
232
+ - - '='
233
+ - !ruby/object:Gem::Version
234
+ version: 1.0.1
235
235
  description: Simple multi-agent framework. It uses AMQP for it's messaging layer.
236
236
  email: rgh@filterfish.org
237
237
  executables: