bunny 0.5.3 → 0.6.0
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.
- data/{README → README.rdoc} +9 -2
- data/bunny.gemspec +12 -7
- data/examples/simple_08.rb +1 -1
- data/examples/simple_09.rb +1 -1
- data/examples/simple_ack_08.rb +1 -1
- data/examples/simple_ack_09.rb +1 -1
- data/examples/simple_consumer_08.rb +6 -14
- data/examples/simple_consumer_09.rb +6 -14
- data/examples/simple_fanout_08.rb +2 -2
- data/examples/simple_fanout_09.rb +2 -2
- data/examples/simple_headers_08.rb +1 -1
- data/examples/simple_headers_09.rb +1 -1
- data/examples/simple_topic_08.rb +4 -4
- data/examples/simple_topic_09.rb +4 -4
- data/lib/bunny.rb +23 -15
- data/lib/bunny/channel08.rb +8 -2
- data/lib/bunny/channel09.rb +8 -2
- data/lib/bunny/client08.rb +67 -24
- data/lib/bunny/client09.rb +88 -48
- data/lib/bunny/exchange08.rb +55 -43
- data/lib/bunny/exchange09.rb +67 -54
- data/lib/bunny/queue08.rb +79 -137
- data/lib/bunny/queue09.rb +79 -141
- data/lib/bunny/subscription08.rb +85 -0
- data/lib/bunny/subscription09.rb +85 -0
- data/lib/qrack/client.rb +29 -10
- data/lib/qrack/protocol/spec08.rb +1 -0
- data/lib/qrack/protocol/spec09.rb +1 -0
- data/lib/qrack/qrack08.rb +1 -0
- data/lib/qrack/qrack09.rb +1 -0
- data/lib/qrack/queue.rb +1 -1
- data/lib/qrack/subscription.rb +102 -0
- data/spec/spec_08/bunny_spec.rb +6 -0
- data/spec/spec_08/connection_spec.rb +12 -0
- data/spec/spec_08/exchange_spec.rb +19 -3
- data/spec/spec_08/queue_spec.rb +87 -13
- data/spec/spec_09/bunny_spec.rb +7 -1
- data/spec/spec_09/connection_spec.rb +12 -0
- data/spec/spec_09/exchange_spec.rb +19 -3
- data/spec/spec_09/queue_spec.rb +94 -21
- metadata +11 -6
data/spec/spec_08/queue_spec.rb
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
require File.expand_path(File.join(File.dirname(__FILE__), %w[.. .. lib bunny]))
|
10
10
|
|
11
|
-
describe
|
11
|
+
describe 'Queue' do
|
12
12
|
|
13
13
|
before(:each) do
|
14
14
|
@b = Bunny.new
|
@@ -25,7 +25,13 @@ describe Bunny do
|
|
25
25
|
q.bind(exch, :nowait => true).should == :bind_ok
|
26
26
|
end
|
27
27
|
|
28
|
-
it "should
|
28
|
+
it "should raise an error when trying to bind to a non-existent exchange" do
|
29
|
+
q = @b.queue('test1')
|
30
|
+
lambda {q.bind('bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
31
|
+
@b.channel.active.should == false
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should be able to bind to an existing exchange" do
|
29
35
|
exch = @b.exchange('direct_exch')
|
30
36
|
q = @b.queue('test1')
|
31
37
|
q.bind(exch).should == :bind_ok
|
@@ -37,7 +43,13 @@ describe Bunny do
|
|
37
43
|
q.unbind(exch, :nowait => true).should == :unbind_ok
|
38
44
|
end
|
39
45
|
|
40
|
-
it "should
|
46
|
+
it "should raise an error if unbinding from a non-existent exchange" do
|
47
|
+
q = @b.queue('test1')
|
48
|
+
lambda {q.unbind('bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
49
|
+
@b.channel.active.should == false
|
50
|
+
end
|
51
|
+
|
52
|
+
it "should be able to unbind from an existing exchange" do
|
41
53
|
exch = @b.exchange('direct_exch')
|
42
54
|
q = @b.queue('test1')
|
43
55
|
q.unbind(exch).should == :unbind_ok
|
@@ -51,7 +63,7 @@ describe Bunny do
|
|
51
63
|
|
52
64
|
it "should be able to pop a message complete with header and delivery details" do
|
53
65
|
q = @b.queue('test1')
|
54
|
-
msg = q.pop(
|
66
|
+
msg = q.pop()
|
55
67
|
msg.should be_an_instance_of(Hash)
|
56
68
|
msg[:header].should be_an_instance_of(Bunny::Protocol::Header)
|
57
69
|
msg[:payload].should == 'This is a test message'
|
@@ -62,7 +74,7 @@ describe Bunny do
|
|
62
74
|
it "should be able to pop a message and just get the payload" do
|
63
75
|
q = @b.queue('test1')
|
64
76
|
q.publish('This is another test message')
|
65
|
-
msg = q.pop
|
77
|
+
msg = q.pop[:payload]
|
66
78
|
msg.should == 'This is another test message'
|
67
79
|
q.message_count.should == 0
|
68
80
|
end
|
@@ -71,15 +83,28 @@ describe Bunny do
|
|
71
83
|
q = @b.queue('test1')
|
72
84
|
lg_msg = 'z' * 142000
|
73
85
|
q.publish(lg_msg)
|
74
|
-
msg = q.pop
|
86
|
+
msg = q.pop[:payload]
|
75
87
|
msg.should == lg_msg
|
76
88
|
end
|
77
89
|
|
78
|
-
it "should be able
|
90
|
+
it "should be able call a block when popping a message" do
|
91
|
+
q = @b.queue('test1')
|
92
|
+
q.publish('This is another test message')
|
93
|
+
q.pop { |msg| msg[:payload].should == 'This is another test message' }
|
94
|
+
q.pop { |msg| msg[:payload].should == :queue_empty }
|
95
|
+
end
|
96
|
+
|
97
|
+
it "should raise an error if purge fails" do
|
79
98
|
q = @b.queue('test1')
|
80
99
|
5.times {q.publish('This is another test message')}
|
81
100
|
q.message_count.should == 5
|
82
|
-
q.purge
|
101
|
+
lambda {q.purge(:queue => 'bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
102
|
+
end
|
103
|
+
|
104
|
+
it "should be able to be purged to remove all of its messages" do
|
105
|
+
q = @b.queue('test1')
|
106
|
+
q.message_count.should == 5
|
107
|
+
q.purge.should == :purge_ok
|
83
108
|
q.message_count.should == 0
|
84
109
|
end
|
85
110
|
|
@@ -87,7 +112,7 @@ describe Bunny do
|
|
87
112
|
q = @b.queue('test1')
|
88
113
|
q.publish('This is another test message')
|
89
114
|
q.pop
|
90
|
-
msg = q.pop
|
115
|
+
msg = q.pop[:payload]
|
91
116
|
msg.should == :queue_empty
|
92
117
|
end
|
93
118
|
|
@@ -95,9 +120,8 @@ describe Bunny do
|
|
95
120
|
q = @b.queue('test1')
|
96
121
|
5.times {q.publish('Yet another test message')}
|
97
122
|
q.message_count.should == 5
|
98
|
-
q.subscribe(:message_max => 0)
|
123
|
+
q.subscribe(:message_max => 0)
|
99
124
|
q.message_count.should == 5
|
100
|
-
q.unsubscribe.should == :unsubscribe_ok
|
101
125
|
q.purge.should == :purge_ok
|
102
126
|
end
|
103
127
|
|
@@ -105,10 +129,60 @@ describe Bunny do
|
|
105
129
|
q = @b.queue('test1')
|
106
130
|
5.times {q.publish('Yet another test message')}
|
107
131
|
q.message_count.should == 5
|
108
|
-
q.subscribe(:message_max => 5)
|
109
|
-
q.unsubscribe.should == :unsubscribe_ok
|
132
|
+
q.subscribe(:message_max => 5)
|
110
133
|
end
|
111
134
|
|
135
|
+
it "should stop subscription after processing message_max messages < total in queue" do
|
136
|
+
q = @b.queue('test1')
|
137
|
+
@b.qos()
|
138
|
+
10.times {q.publish('Yet another test message')}
|
139
|
+
q.message_count.should == 10
|
140
|
+
q.subscribe(:message_max => 5, :ack => true)
|
141
|
+
q.message_count.should == 5
|
142
|
+
q.purge.should == :purge_ok
|
143
|
+
end
|
144
|
+
|
145
|
+
it "should raise an error when delete fails" do
|
146
|
+
q = @b.queue('test1')
|
147
|
+
lambda {q.delete(:queue => 'bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
148
|
+
@b.channel.active.should == false
|
149
|
+
end
|
150
|
+
|
151
|
+
it "should pass correct block parameters through on subscribe" do
|
152
|
+
q = @b.queue('test1')
|
153
|
+
q.publish("messages pop\'n")
|
154
|
+
|
155
|
+
q.subscribe do |msg|
|
156
|
+
msg[:header].should be_an_instance_of Qrack::Protocol::Header
|
157
|
+
msg[:payload].should == "messages pop'n"
|
158
|
+
msg[:delivery_details].should_not be_nil
|
159
|
+
|
160
|
+
q.unsubscribe
|
161
|
+
break
|
162
|
+
end
|
163
|
+
|
164
|
+
end
|
165
|
+
|
166
|
+
it "should finish processing subscription messages if break is called in block" do
|
167
|
+
q = @b.queue('test1')
|
168
|
+
q.publish('messages in my quezen')
|
169
|
+
|
170
|
+
q.subscribe do |msg|
|
171
|
+
msg[:payload].should == 'messages in my quezen'
|
172
|
+
q.unsubscribe
|
173
|
+
break
|
174
|
+
end
|
175
|
+
|
176
|
+
5.times {|i| q.publish("#{i}")}
|
177
|
+
q.subscribe do |msg|
|
178
|
+
if msg[:payload] == '4'
|
179
|
+
q.unsubscribe
|
180
|
+
break
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
end
|
185
|
+
|
112
186
|
it "should be able to be deleted" do
|
113
187
|
q = @b.queue('test1')
|
114
188
|
res = q.delete
|
data/spec/spec_09/bunny_spec.rb
CHANGED
@@ -35,7 +35,7 @@ describe Bunny do
|
|
35
35
|
end
|
36
36
|
|
37
37
|
it "should raise an error if trying to switch to a non-existent channel" do
|
38
|
-
lambda { @b.switch_channel(5)}.should raise_error(RuntimeError)
|
38
|
+
lambda { @b.switch_channel(5) }.should raise_error(RuntimeError)
|
39
39
|
end
|
40
40
|
|
41
41
|
it "should be able to create an exchange" do
|
@@ -52,6 +52,12 @@ describe Bunny do
|
|
52
52
|
@b.queues.has_key?('test1').should be(true)
|
53
53
|
end
|
54
54
|
|
55
|
+
# Current RabbitMQ has not implemented some functionality
|
56
|
+
it "should raise an error if setting of QoS fails" do
|
57
|
+
lambda { @b.qos(:global => true) }.should raise_error(Bunny::ForcedConnectionCloseError)
|
58
|
+
@b.status.should == :not_connected
|
59
|
+
end
|
60
|
+
|
55
61
|
it "should be able to set QoS" do
|
56
62
|
@b.qos.should == :qos_ok
|
57
63
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# connection_spec.rb
|
2
|
+
|
3
|
+
require File.expand_path(File.join(File.dirname(__FILE__), %w[.. .. lib bunny]))
|
4
|
+
|
5
|
+
describe Bunny do
|
6
|
+
|
7
|
+
it "should raise an error if the wrong user name or password is used" do
|
8
|
+
b = Bunny.new(:spec => '0.9', :user => 'wrong')
|
9
|
+
lambda { b.start}.should raise_error(Bunny::ProtocolError)
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
require File.expand_path(File.join(File.dirname(__FILE__), %w[.. .. lib bunny]))
|
10
10
|
|
11
|
-
describe
|
11
|
+
describe 'Exchange' do
|
12
12
|
|
13
13
|
before(:each) do
|
14
14
|
@b = Bunny.new(:spec => '09')
|
@@ -16,7 +16,8 @@ describe Bunny do
|
|
16
16
|
end
|
17
17
|
|
18
18
|
it "should raise an error if instantiated as non-existent type" do
|
19
|
-
lambda { @b.exchange('bogus_ex', :type => :bogus) }.should raise_error(Bunny::
|
19
|
+
lambda { @b.exchange('bogus_ex', :type => :bogus) }.should raise_error(Bunny::ForcedConnectionCloseError)
|
20
|
+
@b.status.should == :not_connected
|
20
21
|
end
|
21
22
|
|
22
23
|
it "should allow a default direct exchange to be instantiated by specifying :type" do
|
@@ -124,13 +125,28 @@ describe Bunny do
|
|
124
125
|
end
|
125
126
|
|
126
127
|
it "should be able to return an undeliverable message" do
|
127
|
-
exch = @b.exchange('')
|
128
|
+
exch = @b.exchange('return_exch')
|
128
129
|
exch.publish('This message should be undeliverable', :immediate => true)
|
129
130
|
ret_msg = @b.returned_message
|
130
131
|
ret_msg.should be_an_instance_of(Hash)
|
131
132
|
ret_msg[:payload].should == 'This message should be undeliverable'
|
132
133
|
end
|
133
134
|
|
135
|
+
it "should be able to return a message that exceeds maximum frame size" do
|
136
|
+
exch = @b.exchange('return_exch')
|
137
|
+
lg_msg = 'z' * 142000
|
138
|
+
exch.publish(lg_msg, :immediate => true)
|
139
|
+
ret_msg = @b.returned_message
|
140
|
+
ret_msg.should be_an_instance_of(Hash)
|
141
|
+
ret_msg[:payload].should == lg_msg
|
142
|
+
end
|
143
|
+
|
144
|
+
it "should report an error if delete fails" do
|
145
|
+
exch = @b.exchange('direct_exchange')
|
146
|
+
lambda { exch.delete(:exchange => 'bogus_ex') }.should raise_error(Bunny::ForcedChannelCloseError)
|
147
|
+
@b.channel.active.should == false
|
148
|
+
end
|
149
|
+
|
134
150
|
it "should be able to be deleted" do
|
135
151
|
exch = @b.exchange('direct_exchange')
|
136
152
|
res = exch.delete
|
data/spec/spec_09/queue_spec.rb
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
require File.expand_path(File.join(File.dirname(__FILE__), %w[.. .. lib bunny]))
|
10
10
|
|
11
|
-
describe
|
11
|
+
describe 'Queue' do
|
12
12
|
|
13
13
|
before(:each) do
|
14
14
|
@b = Bunny.new(:spec => '09')
|
@@ -25,18 +25,30 @@ describe Bunny do
|
|
25
25
|
q.bind(exch, :nowait => true).should == :bind_ok
|
26
26
|
end
|
27
27
|
|
28
|
-
it "should
|
28
|
+
it "should raise an error when trying to bind to a non-existent exchange" do
|
29
|
+
q = @b.queue('test1')
|
30
|
+
lambda {q.bind('bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
31
|
+
@b.channel.active.should == false
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should be able to bind to an existing exchange" do
|
29
35
|
exch = @b.exchange('direct_exch')
|
30
36
|
q = @b.queue('test1')
|
31
37
|
q.bind(exch).should == :bind_ok
|
32
38
|
end
|
33
39
|
|
34
|
-
it "should ignore the :nowait option when unbinding from an exchange" do
|
40
|
+
it "should ignore the :nowait option when unbinding from an existing exchange" do
|
35
41
|
exch = @b.exchange('direct_exch')
|
36
42
|
q = @b.queue('test0')
|
37
43
|
q.unbind(exch, :nowait => true).should == :unbind_ok
|
38
44
|
end
|
39
45
|
|
46
|
+
it "should raise an error if unbinding from a non-existent exchange" do
|
47
|
+
q = @b.queue('test1')
|
48
|
+
lambda {q.unbind('bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
49
|
+
@b.channel.active.should == false
|
50
|
+
end
|
51
|
+
|
40
52
|
it "should be able to unbind from an exchange" do
|
41
53
|
exch = @b.exchange('direct_exch')
|
42
54
|
q = @b.queue('test1')
|
@@ -51,7 +63,7 @@ describe Bunny do
|
|
51
63
|
|
52
64
|
it "should be able to pop a message complete with header and delivery details" do
|
53
65
|
q = @b.queue('test1')
|
54
|
-
msg = q.pop(
|
66
|
+
msg = q.pop()
|
55
67
|
msg.should be_an_instance_of(Hash)
|
56
68
|
msg[:header].should be_an_instance_of(Bunny::Protocol09::Header)
|
57
69
|
msg[:payload].should == 'This is a test message'
|
@@ -62,7 +74,7 @@ describe Bunny do
|
|
62
74
|
it "should be able to pop a message and just get the payload" do
|
63
75
|
q = @b.queue('test1')
|
64
76
|
q.publish('This is another test message')
|
65
|
-
msg = q.pop
|
77
|
+
msg = q.pop[:payload]
|
66
78
|
msg.should == 'This is another test message'
|
67
79
|
q.message_count.should == 0
|
68
80
|
end
|
@@ -71,15 +83,28 @@ describe Bunny do
|
|
71
83
|
q = @b.queue('test1')
|
72
84
|
lg_msg = 'z' * 142000
|
73
85
|
q.publish(lg_msg)
|
74
|
-
msg = q.pop
|
86
|
+
msg = q.pop[:payload]
|
75
87
|
msg.should == lg_msg
|
76
88
|
end
|
77
89
|
|
78
|
-
it "should be able
|
90
|
+
it "should be able call a block when popping a message" do
|
91
|
+
q = @b.queue('test1')
|
92
|
+
q.publish('This is another test message')
|
93
|
+
q.pop { |msg| msg[:payload].should == 'This is another test message' }
|
94
|
+
q.pop { |msg| msg[:payload].should == :queue_empty }
|
95
|
+
end
|
96
|
+
|
97
|
+
it "should raise an error if purge fails" do
|
79
98
|
q = @b.queue('test1')
|
80
99
|
5.times {q.publish('This is another test message')}
|
81
100
|
q.message_count.should == 5
|
82
|
-
q.purge
|
101
|
+
lambda {q.purge(:queue => 'bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
102
|
+
end
|
103
|
+
|
104
|
+
it "should be able to be purged to remove all of its messages" do
|
105
|
+
q = @b.queue('test1')
|
106
|
+
q.message_count.should == 5
|
107
|
+
q.purge.should == :purge_ok
|
83
108
|
q.message_count.should == 0
|
84
109
|
end
|
85
110
|
|
@@ -87,17 +112,16 @@ describe Bunny do
|
|
87
112
|
q = @b.queue('test1')
|
88
113
|
q.publish('This is another test message')
|
89
114
|
q.pop
|
90
|
-
msg = q.pop
|
115
|
+
msg = q.pop[:payload]
|
91
116
|
msg.should == :queue_empty
|
92
117
|
end
|
93
|
-
|
118
|
+
|
94
119
|
it "should stop subscription without processing messages if max specified is 0" do
|
95
120
|
q = @b.queue('test1')
|
96
121
|
5.times {q.publish('Yet another test message')}
|
97
122
|
q.message_count.should == 5
|
98
|
-
q.subscribe(:message_max => 0)
|
123
|
+
q.subscribe(:message_max => 0)
|
99
124
|
q.message_count.should == 5
|
100
|
-
q.unsubscribe.should == :unsubscribe_ok
|
101
125
|
q.purge.should == :purge_ok
|
102
126
|
end
|
103
127
|
|
@@ -105,8 +129,57 @@ describe Bunny do
|
|
105
129
|
q = @b.queue('test1')
|
106
130
|
5.times {q.publish('Yet another test message')}
|
107
131
|
q.message_count.should == 5
|
108
|
-
q.subscribe(:message_max => 5)
|
109
|
-
|
132
|
+
q.subscribe(:message_max => 5)
|
133
|
+
end
|
134
|
+
|
135
|
+
it "should stop subscription after processing message_max messages < total in queue" do
|
136
|
+
q = @b.queue('test1')
|
137
|
+
@b.qos()
|
138
|
+
10.times {q.publish('Yet another test message')}
|
139
|
+
q.message_count.should == 10
|
140
|
+
q.subscribe(:message_max => 5, :ack => true)
|
141
|
+
q.message_count.should == 5
|
142
|
+
q.purge.should == :purge_ok
|
143
|
+
end
|
144
|
+
|
145
|
+
it "should raise an error when delete fails" do
|
146
|
+
q = @b.queue('test1')
|
147
|
+
lambda {q.delete(:queue => 'bogus')}.should raise_error(Bunny::ForcedChannelCloseError)
|
148
|
+
@b.channel.active.should == false
|
149
|
+
end
|
150
|
+
|
151
|
+
it "should pass correct block parameters through on subscribe" do
|
152
|
+
q = @b.queue('test1')
|
153
|
+
q.publish("messages pop\'n")
|
154
|
+
|
155
|
+
q.subscribe do |msg|
|
156
|
+
msg[:header].should be_an_instance_of Qrack::Protocol09::Header
|
157
|
+
msg[:payload].should == "messages pop'n"
|
158
|
+
msg[:delivery_details].should_not be_nil
|
159
|
+
|
160
|
+
q.unsubscribe
|
161
|
+
break
|
162
|
+
end
|
163
|
+
|
164
|
+
end
|
165
|
+
|
166
|
+
it "should finish processing subscription messages if break is called in block" do
|
167
|
+
q = @b.queue('test1')
|
168
|
+
q.publish('messages in my quezen')
|
169
|
+
|
170
|
+
q.subscribe do |msg|
|
171
|
+
msg[:payload].should == 'messages in my quezen'
|
172
|
+
q.unsubscribe
|
173
|
+
break
|
174
|
+
end
|
175
|
+
|
176
|
+
5.times {|i| q.publish("#{i}")}
|
177
|
+
q.subscribe do |msg|
|
178
|
+
if msg[:payload] == '4'
|
179
|
+
q.unsubscribe
|
180
|
+
break
|
181
|
+
end
|
182
|
+
end
|
110
183
|
end
|
111
184
|
|
112
185
|
it "should be able to be deleted" do
|
@@ -115,18 +188,18 @@ describe Bunny do
|
|
115
188
|
res.should == :delete_ok
|
116
189
|
@b.queues.has_key?('test1').should be(false)
|
117
190
|
end
|
118
|
-
|
191
|
+
|
119
192
|
it "should ignore the :nowait option when deleted" do
|
120
193
|
q = @b.queue('test0')
|
121
194
|
q.delete(:nowait => true)
|
122
195
|
end
|
123
196
|
|
124
|
-
|
125
|
-
|
126
|
-
|
197
|
+
it "should support server named queues" do
|
198
|
+
q = @b.queue
|
199
|
+
q.name.should_not == nil
|
127
200
|
|
128
|
-
|
129
|
-
|
130
|
-
|
201
|
+
@b.queue(q.name).should == q
|
202
|
+
q.delete
|
203
|
+
end
|
131
204
|
|
132
205
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bunny
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Duncan
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-10-05 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -20,10 +20,10 @@ executables: []
|
|
20
20
|
extensions: []
|
21
21
|
|
22
22
|
extra_rdoc_files:
|
23
|
-
- README
|
23
|
+
- README.rdoc
|
24
24
|
files:
|
25
25
|
- LICENSE
|
26
|
-
- README
|
26
|
+
- README.rdoc
|
27
27
|
- Rakefile
|
28
28
|
- bunny.gemspec
|
29
29
|
- examples/simple_08.rb
|
@@ -49,9 +49,12 @@ files:
|
|
49
49
|
- lib/bunny/exchange09.rb
|
50
50
|
- lib/bunny/queue08.rb
|
51
51
|
- lib/bunny/queue09.rb
|
52
|
+
- lib/bunny/subscription08.rb
|
53
|
+
- lib/bunny/subscription09.rb
|
52
54
|
- lib/qrack/client.rb
|
53
55
|
- lib/qrack/channel.rb
|
54
56
|
- lib/qrack/queue.rb
|
57
|
+
- lib/qrack/subscription.rb
|
55
58
|
- lib/qrack/protocol/protocol08.rb
|
56
59
|
- lib/qrack/protocol/protocol09.rb
|
57
60
|
- lib/qrack/protocol/spec08.rb
|
@@ -65,9 +68,11 @@ files:
|
|
65
68
|
- spec/spec_08/bunny_spec.rb
|
66
69
|
- spec/spec_08/exchange_spec.rb
|
67
70
|
- spec/spec_08/queue_spec.rb
|
71
|
+
- spec/spec_08/connection_spec.rb
|
68
72
|
- spec/spec_09/bunny_spec.rb
|
69
73
|
- spec/spec_09/exchange_spec.rb
|
70
74
|
- spec/spec_09/queue_spec.rb
|
75
|
+
- spec/spec_09/connection_spec.rb
|
71
76
|
has_rdoc: true
|
72
77
|
homepage: http://github.com/celldee/bunny/tree/master
|
73
78
|
licenses: []
|
@@ -75,7 +80,7 @@ licenses: []
|
|
75
80
|
post_install_message:
|
76
81
|
rdoc_options:
|
77
82
|
- --main
|
78
|
-
- README
|
83
|
+
- README.rdoc
|
79
84
|
require_paths:
|
80
85
|
- lib
|
81
86
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -93,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
93
98
|
requirements: []
|
94
99
|
|
95
100
|
rubyforge_project: bunny-amqp
|
96
|
-
rubygems_version: 1.3.
|
101
|
+
rubygems_version: 1.3.5
|
97
102
|
signing_key:
|
98
103
|
specification_version: 3
|
99
104
|
summary: A synchronous Ruby AMQP client that enables interaction with AMQP-compliant brokers/servers.
|