mqrpc 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/lib/mqrpc/agent.rb +1 -1
  2. data/lib/mqrpc/message.rb +5 -10
  3. metadata +1 -1
data/lib/mqrpc/agent.rb CHANGED
@@ -241,7 +241,7 @@ module MQRPC
241
241
  @slidingwindow[destination][msg.id] = true
242
242
  end
243
243
 
244
- if msg.buffer?
244
+ if msg.delayable
245
245
  @outbuffer[destination] << msg
246
246
  if @outbuffer[destination].length > MAXBUF
247
247
  flushout(destination)
data/lib/mqrpc/message.rb CHANGED
@@ -38,7 +38,6 @@ end # modules BindToHash
38
38
  module MQRPC
39
39
  class Message
40
40
  extend BindToHash
41
-
42
41
  @@idseq = 0
43
42
  @@idlock = Mutex.new
44
43
  @@knowntypes = Hash.new
@@ -47,9 +46,11 @@ module MQRPC
47
46
  # Message attributes
48
47
  header :id
49
48
  header :message_class
49
+ header :delayable
50
50
  header :reply_to
51
51
  header :timestamp
52
52
  header :args
53
+
53
54
  def self.inherited(subclass)
54
55
  MQRPC::logger.debug "Message '#{subclass.name}' subclasses #{self.name}"
55
56
  @@knowntypes[subclass.name] = subclass
@@ -75,7 +76,8 @@ module MQRPC
75
76
 
76
77
  def initialize
77
78
  @data = Hash.new
78
- want_buffer(false)
79
+ # Don't delay messages by defualt
80
+ self.delayable = false
79
81
 
80
82
  generate_id!
81
83
  self.message_class = self.class.name
@@ -94,14 +96,6 @@ module MQRPC
94
96
  return Time.now.to_f - timestamp
95
97
  end
96
98
 
97
- def buffer?
98
- return @buffer
99
- end
100
-
101
- def want_buffer(want_buffer=true)
102
- @buffer = want_buffer
103
- end
104
-
105
99
  def to_json(*args)
106
100
  return @data.to_json(*args)
107
101
  end
@@ -124,6 +118,7 @@ module MQRPC
124
118
  # Copy the request id if we are given a source_request
125
119
  if source_request.is_a?(RequestMessage)
126
120
  self.in_reply_to = source_request.id
121
+ self.delayable = source_request.delayable
127
122
  end
128
123
  self.args = Hash.new
129
124
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mqrpc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jordan Sissel, Pete Fritchman