qpid_messaging 0.16.0 → 0.18.1
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +9 -0
- data/LICENSE +0 -29
- data/README.rdoc +1 -1
- data/Rakefile +56 -4
- data/TODO +9 -5
- data/features/creating_a_receiver.feature +2 -2
- data/features/creating_a_sender.feature +3 -3
- data/features/receiving_a_message.feature +6 -4
- data/features/sending_a_message.feature +3 -3
- data/features/step_definitions/address_steps.rb +7 -0
- data/features/step_definitions/receiver_steps.rb +8 -0
- data/lib/qpid_messaging/address.rb +0 -2
- data/lib/qpid_messaging/connection.rb +0 -2
- data/lib/qpid_messaging/duration.rb +0 -2
- data/lib/qpid_messaging/encoding.rb +2 -5
- data/lib/qpid_messaging/message.rb +0 -2
- data/lib/qpid_messaging/receiver.rb +0 -2
- data/lib/qpid_messaging/session.rb +0 -2
- data/lib/qpid_messaging/version.rb +2 -4
- data/lib/qpid_messaging.rb +2 -1
- metadata +10 -19
data/ChangeLog
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
version 0.18 (24 September 2012):
|
2
|
+
* Renamed gemfile (retroactively) to qpid_messaging.
|
3
|
+
* Added more details to the Rdoc data.
|
4
|
+
* Corrected dependencies on cqpid.
|
5
|
+
* Fixes for Ruby 1.9.
|
6
|
+
- Fixed string encodings.
|
7
|
+
- Removed trailing colons from conditions.
|
8
|
+
* Removed the Boost license text.
|
9
|
+
* Cleans up queues after running Cucumber tests.
|
data/LICENSE
CHANGED
@@ -203,32 +203,3 @@
|
|
203
203
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
204
204
|
See the License for the specific language governing permissions and
|
205
205
|
limitations under the License.
|
206
|
-
|
207
|
-
=========================================================================
|
208
|
-
== Boost License ==
|
209
|
-
=========================================================================
|
210
|
-
|
211
|
-
Boost Software License - Version 1.0 - August 17th, 2003
|
212
|
-
|
213
|
-
Permission is hereby granted, free of charge, to any person or organization
|
214
|
-
obtaining a copy of the software and accompanying documentation covered by
|
215
|
-
this license (the "Software") to use, reproduce, display, distribute,
|
216
|
-
execute, and transmit the Software, and to prepare derivative works of the
|
217
|
-
Software, and to permit third-parties to whom the Software is furnished to
|
218
|
-
do so, all subject to the following:
|
219
|
-
|
220
|
-
The copyright notices in the Software and this entire statement, including
|
221
|
-
the above license grant, this restriction and the following disclaimer,
|
222
|
-
must be included in all copies of the Software, in whole or in part, and
|
223
|
-
all derivative works of the Software, unless such copies or derivative
|
224
|
-
works are solely in the form of machine-executable object code generated by
|
225
|
-
a source language processor.
|
226
|
-
|
227
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
228
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
229
|
-
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
230
|
-
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
231
|
-
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
232
|
-
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
233
|
-
DEALINGS IN THE SOFTWARE.
|
234
|
-
|
data/README.rdoc
CHANGED
data/Rakefile
CHANGED
@@ -22,17 +22,34 @@ task :noop
|
|
22
22
|
|
23
23
|
$:.push File.expand_path("../lib", __FILE__)
|
24
24
|
|
25
|
-
|
25
|
+
OUTPUT_DIR=ENV["OUTPUT_DIR"] || "."
|
26
26
|
|
27
27
|
require "rubygems"
|
28
|
+
require "rubygems/package_task"
|
28
29
|
|
29
30
|
require "rake/clean"
|
30
31
|
require "rake/extensiontask"
|
32
|
+
require "rake/rdoctask"
|
31
33
|
require "rdoc/task"
|
32
34
|
require "rake/testtask"
|
33
35
|
|
34
36
|
require "cucumber/rake/task"
|
35
|
-
require "
|
37
|
+
require "rspec/core/rake_task"
|
38
|
+
|
39
|
+
CLOBBER.include("pkg")
|
40
|
+
|
41
|
+
load "./lib/qpid_messaging/version.rb"
|
42
|
+
|
43
|
+
#-------------
|
44
|
+
# Gem Details.
|
45
|
+
#-------------
|
46
|
+
|
47
|
+
NAME = "qpid_messaging"
|
48
|
+
# VERSION = Qpid::VERSION
|
49
|
+
AUTHOR = "Darryl L. Pierce"
|
50
|
+
EMAIL = "dpierce@redhat.com"
|
51
|
+
HOMEPAGE = "http://qpid.apache.org"
|
52
|
+
SUMMARY = "Qpid is an enterprise messaging framework."
|
36
53
|
|
37
54
|
desc "Default: run all tests."
|
38
55
|
task :default => :test
|
@@ -49,7 +66,6 @@ namespace :test do
|
|
49
66
|
desc "Run RSpec tests."
|
50
67
|
Spec::Rake::SpecTask.new do |t|
|
51
68
|
t.ruby_opts = ['-rtest/unit']
|
52
|
-
t.spec_files = FileList["spec/**/*_spec.rb"]
|
53
69
|
t.rcov = false
|
54
70
|
t.rcov_opts = [
|
55
71
|
'--exclude', 'lib\/qpid_messaging.rb,spec\/,lib\/ruby',
|
@@ -79,9 +95,45 @@ Rake::RDocTask.new(:rdoc => "rdoc",
|
|
79
95
|
rd.title = "Qpid Messaging Documentation"
|
80
96
|
end
|
81
97
|
|
98
|
+
#-----------------
|
99
|
+
# Package the gem.
|
100
|
+
#-----------------
|
101
|
+
|
102
|
+
spec = Gem::Specification.new do |s|
|
103
|
+
s.name = NAME
|
104
|
+
s.version = Qpid::VERSION
|
105
|
+
s.platform = Gem::Platform::RUBY
|
106
|
+
s.extra_rdoc_files = ["README.rdoc"]
|
107
|
+
s.summary = SUMMARY
|
108
|
+
s.description = s.summary
|
109
|
+
s.author = AUTHOR
|
110
|
+
s.email = EMAIL
|
111
|
+
s.homepage = HOMEPAGE
|
112
|
+
|
113
|
+
s.extensions = FileList["ext/**/extconf.rb"]
|
114
|
+
|
115
|
+
s.require_path = "lib"
|
116
|
+
# DEPRECATED s.autorequire = NAME
|
117
|
+
s.files = FileList["LICENSE",
|
118
|
+
"README.rdoc",
|
119
|
+
"ChangeLog",
|
120
|
+
"Rakefile",
|
121
|
+
"TODO",
|
122
|
+
"lib/**/*.rb",
|
123
|
+
"test/**/*.rb",
|
124
|
+
"examples/**/*.rb",
|
125
|
+
"ext/**/*",
|
126
|
+
"features/**/*",
|
127
|
+
"spec/**/*"]
|
128
|
+
end
|
129
|
+
|
130
|
+
Gem::PackageTask.new(spec) do |pkg|
|
131
|
+
pkg.package_dir = "#{OUTPUT_DIR}/pkg"
|
132
|
+
end
|
133
|
+
|
82
134
|
#------------------
|
83
135
|
# Build native code
|
84
136
|
#------------------
|
85
137
|
|
86
|
-
Rake::ExtensionTask.new("cqpid")
|
138
|
+
Rake::ExtensionTask.new("cqpid", spec)
|
87
139
|
|
data/TODO
CHANGED
@@ -1,7 +1,11 @@
|
|
1
|
-
TODO
|
2
|
-
|
1
|
+
Qpid Ruby bindings TODO List
|
2
|
+
========================================================================
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
* Rework the blocking tasks to not bring the main thread to a halt.
|
4
|
+
Beyond this simple laundry list, you can find the list of bugs and
|
5
|
+
enhancements to be fixed by going to the Apache Qpid JIRA instance:
|
7
6
|
|
7
|
+
https://issues.apache.org/jira/browse/QPID
|
8
|
+
|
9
|
+
Fixes & Improvements
|
10
|
+
========================================================================
|
11
|
+
* Rework the blocking tasks to not bring the main thread to a halt.
|
@@ -21,9 +21,9 @@ Feature: Creating a receiver
|
|
21
21
|
|
22
22
|
Scenario: The address string is fine
|
23
23
|
Given an open session
|
24
|
-
Then creating a receiver with "my-queue;{create:always}" succeeds
|
24
|
+
Then creating a receiver with "my-queue;{create:always,delete:always}" succeeds
|
25
25
|
|
26
26
|
Scenario: Using an Address object
|
27
27
|
Given an open session
|
28
|
-
And an Address with the name "create-receiver-test" and subject "foo" and option "create" set to "always"
|
28
|
+
And an Address with the name "create-receiver-test" and subject "foo" and option "create" set to "always" and "delete" set to "always"
|
29
29
|
Then creating a receiver with an Address succeeds
|
@@ -5,11 +5,11 @@ Feature: Creating a sender
|
|
5
5
|
|
6
6
|
Scenario: The session is closed
|
7
7
|
Given a closed session
|
8
|
-
Then creating a sender with "my-queue;{create:always}" raises an exception
|
8
|
+
Then creating a sender with "my-queue;{create:always,delete:always}" raises an exception
|
9
9
|
|
10
10
|
Scenario: The connection is closed
|
11
11
|
Given an open session with a closed connection
|
12
|
-
Then creating a sender with "my-queue;{create:always}" raises an exception
|
12
|
+
Then creating a sender with "my-queue;{create:always,delete:always}" raises an exception
|
13
13
|
|
14
14
|
Scenario: The address is malformed
|
15
15
|
Given an open session
|
@@ -17,7 +17,7 @@ Feature: Creating a sender
|
|
17
17
|
|
18
18
|
Scenario: The address string is valid
|
19
19
|
Given an open session
|
20
|
-
Then creating a sender with "my-queue;{create:always}" succeeds
|
20
|
+
Then creating a sender with "my-queue;{create:always,delete:always}" succeeds
|
21
21
|
|
22
22
|
Scenario: Using an Address object
|
23
23
|
Given an open session
|
@@ -4,24 +4,26 @@ Feature: Receving a message
|
|
4
4
|
I need to be able to receive messages
|
5
5
|
|
6
6
|
Scenario: Receiving after the session is closed
|
7
|
-
Given a sender and receiver for "my-queue;{create:always}"
|
7
|
+
Given a sender and receiver for "my-queue;{create:always,delete:always}"
|
8
8
|
And the message "this is a test" is sent
|
9
9
|
And the session is closed
|
10
10
|
Then getting the next message raises an error
|
11
11
|
|
12
12
|
Scenario: Receiving after the connection is closed
|
13
|
-
Given a sender and receiver for "my-queue;{create:always}"
|
13
|
+
Given a sender and receiver for "my-queue;{create:always,delete:always}"
|
14
14
|
And the message "this is a test" is sent
|
15
15
|
And the connection is closed
|
16
16
|
Then getting the next message raises an error
|
17
17
|
|
18
18
|
Scenario: No message is received on an empty queue
|
19
|
-
Given an existing receiver for "my-queue;{create:always}"
|
19
|
+
Given an existing receiver for "my-queue;{create:always,delete:always}"
|
20
20
|
And the receiver has no pending messages
|
21
21
|
Then getting the next message raises an error
|
22
22
|
|
23
23
|
Scenario: A message is pending
|
24
|
-
Given
|
24
|
+
Given an open session
|
25
|
+
And given a sender for "my-queue;{create:always}"
|
26
|
+
And given a receiver for "my-queue;{create:always,delete:always}"
|
25
27
|
And the receiver has a capacity of 1
|
26
28
|
And the message "this is a test" is sent
|
27
29
|
Then the receiver should have 1 message available
|
@@ -5,17 +5,17 @@ Feature: Sending a message
|
|
5
5
|
|
6
6
|
Scenario: The session is closed
|
7
7
|
Given an open session
|
8
|
-
And creating a sender with "my-queue;{create:always}" succeeds
|
8
|
+
And creating a sender with "my-queue;{create:always,delete:always}" succeeds
|
9
9
|
And the session is closed
|
10
10
|
Then sending the message "This is a test" should raise an error
|
11
11
|
|
12
12
|
Scenario: The connection is closed
|
13
13
|
Given an open session
|
14
|
-
And creating a sender with "my-queue;{create:always}" succeeds
|
14
|
+
And creating a sender with "my-queue;{create:always,delete:always}" succeeds
|
15
15
|
And the connection is closed
|
16
16
|
Then sending the message "This is a test" should raise an error
|
17
17
|
|
18
18
|
Scenario: The message sends successfully
|
19
19
|
Given an open session
|
20
|
-
And creating a sender with "my-queue;{create:always}" succeeds
|
20
|
+
And creating a sender with "my-queue;{create:always,delete:always}" succeeds
|
21
21
|
Then sending the message "This is a test" succeeds
|
@@ -22,3 +22,10 @@ Given /^an Address with the name "([^"]*)" and subject "([^"]*)" and option "([^
|
|
22
22
|
options["#{key}"] = "#{value}"
|
23
23
|
@address = Qpid::Messaging::Address.new "#{name}", "#{subject}", options
|
24
24
|
end
|
25
|
+
|
26
|
+
Given /^an Address with the name "([^"]*)" and subject "([^"]*)" and option "([^"]*)" set to "([^"]*)" and "([^"]*)" set to "([^"]*)"$/ do |name, subject, key1, value1, key2, value2|
|
27
|
+
options = Hash.new
|
28
|
+
options["#{key1}"] = "#{value1}"
|
29
|
+
options["#{key2}"] = "#{value2}"
|
30
|
+
@address = Qpid::Messaging::Address.new "#{name}", "#{subject}", options
|
31
|
+
end
|
@@ -59,3 +59,11 @@ Then /^the receiver should have (\d+) message available$/ do |available|
|
|
59
59
|
sleep 1
|
60
60
|
@receiver.available.should == available.to_i
|
61
61
|
end
|
62
|
+
|
63
|
+
Given /^given a sender for "([^"]*)"$/ do |address|
|
64
|
+
@sender = @session.create_sender "#{address}"
|
65
|
+
end
|
66
|
+
|
67
|
+
Given /^given a receiver for "([^"]*)"$/ do |address|
|
68
|
+
@receiver = @session.create_receiver "#{address}"
|
69
|
+
end
|
@@ -17,8 +17,6 @@
|
|
17
17
|
# under the License.
|
18
18
|
#
|
19
19
|
|
20
|
-
require 'cqpid'
|
21
|
-
|
22
20
|
module Qpid
|
23
21
|
|
24
22
|
module Messaging
|
@@ -46,10 +44,9 @@ module Qpid
|
|
46
44
|
|
47
45
|
case content_type
|
48
46
|
when "amqp/map"
|
49
|
-
|
50
|
-
|
47
|
+
Cqpid.decodeMap message.message_impl
|
51
48
|
when "amqp/list"
|
52
|
-
|
49
|
+
Cqpid.decodeList message.message_impl
|
53
50
|
end
|
54
51
|
|
55
52
|
message.content
|
data/lib/qpid_messaging.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: qpid_messaging
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.18.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,22 +9,19 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-09-24 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
|
-
description:
|
15
|
-
Qpid
|
16
|
-
|
17
|
-
cross-platform Enterprise Messaging system
|
18
|
-
|
19
|
-
'
|
14
|
+
description: Qpid is an enterprise messaging framework.
|
20
15
|
email: dpierce@redhat.com
|
21
16
|
executables: []
|
22
17
|
extensions:
|
23
18
|
- ext/cqpid/extconf.rb
|
24
|
-
extra_rdoc_files:
|
19
|
+
extra_rdoc_files:
|
20
|
+
- README.rdoc
|
25
21
|
files:
|
26
22
|
- LICENSE
|
27
23
|
- README.rdoc
|
24
|
+
- ChangeLog
|
28
25
|
- Rakefile
|
29
26
|
- TODO
|
30
27
|
- lib/qpid_messaging/encoding.rb
|
@@ -74,15 +71,9 @@ files:
|
|
74
71
|
- spec/qpid/sender_spec.rb
|
75
72
|
- spec/spec_helper.rb
|
76
73
|
homepage: http://qpid.apache.org
|
77
|
-
licenses:
|
78
|
-
- ASL
|
74
|
+
licenses: []
|
79
75
|
post_install_message:
|
80
|
-
rdoc_options:
|
81
|
-
- --title
|
82
|
-
- Qpid Messaging Framework
|
83
|
-
- --main
|
84
|
-
- README.rdoc
|
85
|
-
- --line-numbers
|
76
|
+
rdoc_options: []
|
86
77
|
require_paths:
|
87
78
|
- lib
|
88
79
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -98,9 +89,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
98
89
|
- !ruby/object:Gem::Version
|
99
90
|
version: '0'
|
100
91
|
requirements: []
|
101
|
-
rubyforge_project:
|
92
|
+
rubyforge_project:
|
102
93
|
rubygems_version: 1.8.24
|
103
94
|
signing_key:
|
104
95
|
specification_version: 3
|
105
|
-
summary:
|
96
|
+
summary: Qpid is an enterprise messaging framework.
|
106
97
|
test_files: []
|