right_agent 0.9.6 → 0.9.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -209,7 +209,11 @@ module RightScale
209
209
  @pending_dispatches += 1
210
210
  @last_request_dispatch_time = received_at.to_i
211
211
  @dispatched.store(token) if @dup_check && !shared && request.kind_of?(Request) && token
212
- actor.__send__(method, request.payload)
212
+ if actor.method(method).arity == 1
213
+ actor.__send__(method, request.payload)
214
+ else
215
+ actor.__send__(method, request.payload, request)
216
+ end
213
217
  rescue Exception => e
214
218
  @pending_dispatches = [@pending_dispatches - 1, 0].max
215
219
  handle_exception(actor, method, request, e)
data/right_agent.gemspec CHANGED
@@ -24,8 +24,8 @@ require 'rubygems'
24
24
 
25
25
  Gem::Specification.new do |spec|
26
26
  spec.name = 'right_agent'
27
- spec.version = '0.9.6'
28
- spec.date = '2012-03-23'
27
+ spec.version = '0.9.7'
28
+ spec.date = '2012-04-04'
29
29
  spec.authors = ['Lee Kirchhoff', 'Raphael Simon', 'Tony Spataro']
30
30
  spec.email = 'lee@rightscale.com'
31
31
  spec.homepage = 'https://github.com/rightscale/right_agent'
@@ -35,6 +35,10 @@ class Foo
35
35
  ['hello', payload]
36
36
  end
37
37
 
38
+ def bar2(payload, request)
39
+ ['hello', payload, request]
40
+ end
41
+
38
42
  def i_kill_you(payload)
39
43
  raise RuntimeError.new('I kill you!')
40
44
  end
@@ -192,6 +196,14 @@ describe "RightScale::Dispatcher" do
192
196
  res.results.should == ['hello', 'you']
193
197
  end
194
198
 
199
+ it "should dispatch a request with required arity" do
200
+ req = RightScale::Request.new('/foo/bar2', 'you', :token => 'token')
201
+ res = @dispatcher.dispatch(req)
202
+ res.should(be_kind_of(RightScale::Result))
203
+ res.token.should == 'token'
204
+ res.results.should == ['hello', 'you', req]
205
+ end
206
+
195
207
  it "should dispatch a request to the default action" do
196
208
  req = RightScale::Request.new('/foo', 'you', :token => 'token')
197
209
  res = @dispatcher.dispatch(req)
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: right_agent
3
3
  version: !ruby/object:Gem::Version
4
- hash: 55
4
+ hash: 53
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 9
9
- - 6
10
- version: 0.9.6
9
+ - 7
10
+ version: 0.9.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Lee Kirchhoff
@@ -17,7 +17,7 @@ autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
19
 
20
- date: 2012-03-23 00:00:00 -07:00
20
+ date: 2012-04-04 00:00:00 -07:00
21
21
  default_executable:
22
22
  dependencies:
23
23
  - !ruby/object:Gem::Dependency