jruby-hornetq 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -9,7 +9,7 @@ desc "Build gem"
9
9
  task :gem do |t|
10
10
  gemspec = Gem::Specification.new do |s|
11
11
  s.name = 'jruby-hornetq'
12
- s.version = '0.3.2'
12
+ s.version = '0.3.3'
13
13
  s.authors = ['Reid Morrison', 'Brad Pardee']
14
14
  s.email = ['rubywmq@gmail.com', 'bpardee@gmail.com']
15
15
  s.homepage = 'https://github.com/ClarityServices/jruby-hornetq'
@@ -18,13 +18,14 @@ config = YAML.load_file(File.dirname(__FILE__) + '/hornetq.yml')['development']
18
18
  # Create a HornetQ session
19
19
  HornetQ::Client::Connection.session(config) do |session|
20
20
  # Create a non-durable TestQueue to receive messages sent to the TestAddress
21
- session.create_queue_ignore_exists('jms.queue.SampleQueue', 'jms.queue.SampleQueue', false)
21
+ session.create_queue_ignore_exists('TestAddress', 'TestQueue', false)
22
22
  start_time = Time.now
23
23
 
24
- session.producer('jms.queue.SampleQueue') do |producer|
24
+ session.producer('TestAddress') do |producer|
25
25
  puts "Sending messages"
26
26
  (1..count).each do |i|
27
27
  message = session.create_message(HornetQ::Client::Message::TEXT_TYPE,false)
28
+ message.body = "#{Time.now}: ### Hello, World ###"
28
29
  message.body = "#{Time.now}: #{i} : ### Hello, World ###"
29
30
  message.user_id = Java::org.hornetq.utils::UUIDGenerator.getInstance.generateUUID
30
31
 
@@ -10,16 +10,13 @@ require 'rubygems'
10
10
  require 'hornetq'
11
11
 
12
12
  # Using Connect.start since a session must be started in order to consume messages
13
- HornetQ::Client::Connection.start_session(
14
- :connection => {:uri => 'hornetq://stage1'} ,
15
- :session => { :username => 'clarity', :password => 'clarityrul3s'}) do |session|
13
+ HornetQ::Client::Connection.start_session('hornetq://localhost') do |session|
16
14
 
17
15
  # Create a non-durable TestQueue to receive messages sent to the TestAddress
18
- session.create_queue_ignore_exists('jms.queue.SampleQueue', 'jms.queue.SampleQueue', false)
16
+ session.create_queue_ignore_exists('TestAddress', 'TestQueue', false)
19
17
 
20
18
  # Consume All messages from the queue and gather statistics
21
- stats = session.consume(:queue_name => 'jms.queue.SampleQueue', :timeout=> 0, :statistics=>true) do |message|
22
- puts "Body Size:#{message.body_size}"
19
+ stats = session.consume(:queue_name => 'TestQueue', :timeout=> 0, :statistics=>true) do |message|
23
20
  p message
24
21
  puts "=================================="
25
22
  message.acknowledge
@@ -13,12 +13,16 @@
13
13
  #
14
14
  # Note: receive can be used directly, but it is recommended to use #each where possible
15
15
  #
16
- # ClientMessage receive()
16
+ # ClientMessage receive()
17
17
  # Receives a message from a queue
18
+ # Wait forever until a message is received
18
19
  # ClientMessage receive(long timeout)
19
20
  # Receives a message from a queue
20
- # ClientMessage receive_immediate()
21
+ # Returns nil if no message was received after timeout milliseconds
22
+ # ClientMessage receive_immediate()
21
23
  # Receives a message from a queue
24
+ # Return immediately if no message is available on the queue
25
+ # Returns nil if no message available
22
26
  #
23
27
  class Java::org.hornetq.core.client.impl::ClientConsumerImpl
24
28
 
@@ -27,4 +27,19 @@
27
27
  # Returns whether the producer will block when sending non-durable messages
28
28
  #
29
29
  class Java::org.hornetq.core.client.impl::ClientProducerImpl
30
+ def send_with_retry(message)
31
+ first_time = true
32
+ begin
33
+ send(message)
34
+ rescue Java::org.hornetq.api.core.HornetQException => e
35
+ HornetQ.logger.warn "Received producer exception: #{e.message} with code=#{e.cause.code}"
36
+ if first_time && e.cause.code == Java::org.hornetq.api.core.HornetQException::UNBLOCKED
37
+ HornetQ.logger.info "Retrying the send"
38
+ first_time = false
39
+ retry
40
+ else
41
+ raise
42
+ end
43
+ end
44
+ end
30
45
  end
@@ -57,7 +57,7 @@ module HornetQ
57
57
  end
58
58
 
59
59
  def backup?
60
- !!@params[:backup]
60
+ !!@params['backup']
61
61
  end
62
62
  end
63
63
  end
@@ -33,9 +33,9 @@ class URITest < Test::Unit::TestCase
33
33
  assert_equal HornetQ.netty_port(1234), uri.port
34
34
  assert_nil uri.backup_host
35
35
  assert_equal '/zulu', uri.path
36
- assert_equal '../abc', uri[:data_directory]
36
+ assert_equal '../abc', uri['data_directory']
37
37
  assert_equal false, uri.backup?
38
- assert_equal 'def', uri[:myval]
38
+ assert_equal 'def', uri['myval']
39
39
  end
40
40
 
41
41
  should 'parse backup server' do
@@ -45,7 +45,7 @@ class URITest < Test::Unit::TestCase
45
45
  assert_equal HornetQ.netty_port(5446), uri.port
46
46
  assert_nil uri.backup_host
47
47
  assert_equal '/', uri.path
48
- assert_equal './data_backup', uri[:data_directory]
48
+ assert_equal './data_backup', uri['data_directory']
49
49
  assert_equal true, uri.backup?
50
50
  end
51
51
 
metadata CHANGED
@@ -1,12 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jruby-hornetq
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 3
8
- - 2
9
- version: 0.3.2
4
+ prerelease:
5
+ version: 0.3.3
10
6
  platform: ruby
11
7
  authors:
12
8
  - Reid Morrison
@@ -15,20 +11,17 @@ autorequire:
15
11
  bindir: bin
16
12
  cert_chain: []
17
13
 
18
- date: 2011-03-09 00:00:00 -05:00
14
+ date: 2011-03-24 00:00:00 -04:00
19
15
  default_executable:
20
16
  dependencies:
21
17
  - !ruby/object:Gem::Dependency
22
18
  name: gene_pool
23
19
  prerelease: false
24
20
  requirement: &id001 !ruby/object:Gem::Requirement
21
+ none: false
25
22
  requirements:
26
23
  - - ~>
27
24
  - !ruby/object:Gem::Version
28
- segments:
29
- - 1
30
- - 1
31
- - 1
32
25
  version: 1.1.1
33
26
  type: :runtime
34
27
  version_requirements: *id001
@@ -124,23 +117,21 @@ rdoc_options: []
124
117
  require_paths:
125
118
  - lib
126
119
  required_ruby_version: !ruby/object:Gem::Requirement
120
+ none: false
127
121
  requirements:
128
122
  - - ">="
129
123
  - !ruby/object:Gem::Version
130
- segments:
131
- - 0
132
124
  version: "0"
133
125
  required_rubygems_version: !ruby/object:Gem::Requirement
126
+ none: false
134
127
  requirements:
135
128
  - - ">="
136
129
  - !ruby/object:Gem::Version
137
- segments:
138
- - 0
139
130
  version: "0"
140
131
  requirements: []
141
132
 
142
133
  rubyforge_project:
143
- rubygems_version: 1.3.6
134
+ rubygems_version: 1.5.1
144
135
  signing_key:
145
136
  specification_version: 3
146
137
  summary: JRuby interface into HornetQ