qpid_messaging 0.16.0 → 0.18.1
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/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: []
|