leandrosilva-sparrow 1.0.1 → 1.0.2
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/VERSION.yml +1 -1
- data/lib/messaging.rb +31 -20
- data/spec/spec_helper.rb +1 -1
- metadata +1 -1
data/VERSION.yml
CHANGED
data/lib/messaging.rb
CHANGED
@@ -3,7 +3,7 @@ import 'javax.jms.Session'
|
|
3
3
|
import 'javax.jms.MessageListener'
|
4
4
|
|
5
5
|
module Sparrow
|
6
|
-
module
|
6
|
+
module JMS
|
7
7
|
module Messaging
|
8
8
|
|
9
9
|
#
|
@@ -133,38 +133,49 @@ module Sparrow
|
|
133
133
|
#
|
134
134
|
# Ouvintes de mensagens.
|
135
135
|
#
|
136
|
-
# TODO: Completar a implementacao. Ainda nao esta legal.
|
136
|
+
# TODO: Completar a implementacao. Ainda nao esta legal. (Ja dei um tapinha,
|
137
|
+
# acho que agora ta bem proximo do que deve ser.)
|
137
138
|
#
|
138
139
|
class Listener < Base
|
139
140
|
include MessageListener
|
140
|
-
|
141
|
+
|
142
|
+
#
|
143
|
+
# Estes parametros serao injetados pelo listener manager de acordo com o
|
144
|
+
# que houver sido definido pelos metodos connection_factory_name e destination_name.
|
145
|
+
#
|
141
146
|
def initialize(connection_factory, destination)
|
142
147
|
super(connection_factory, destination)
|
143
148
|
end
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
+
|
150
|
+
#
|
151
|
+
# Nome JNDI da connection factory que ser usada para criar conexoes JMS.
|
152
|
+
#
|
153
|
+
# Invariavelmente deve ser usado pelas subclasses para informar qual devera
|
154
|
+
# ser a connection factory usada por esse listener.
|
155
|
+
#
|
156
|
+
def connection_factory_name(name)
|
149
157
|
|
150
158
|
#
|
151
|
-
# Nome
|
159
|
+
# Nome JNDI do destino JMS que sera escutado.
|
152
160
|
#
|
153
|
-
# Invariavelmente deve ser
|
161
|
+
# Invariavelmente deve ser usado pelas subclasses, para informar o nome
|
162
|
+
# da queue ou topico que sera escutado.
|
154
163
|
#
|
155
|
-
def name
|
156
|
-
|
164
|
+
def destination_name(name)
|
165
|
+
@destination_name = name
|
157
166
|
end
|
158
167
|
|
159
|
-
#
|
160
|
-
#
|
161
|
-
#
|
162
|
-
# Invariavelmente
|
163
|
-
#
|
164
|
-
|
165
|
-
|
168
|
+
#
|
169
|
+
# Criterios de selecao de mensagens, seguindo o padrao JMS.
|
170
|
+
#
|
171
|
+
# Invariavelmente as subclasses precisam usar esse metodo para definir
|
172
|
+
# os criterios de recebimento que este listener levara em conta.
|
173
|
+
#
|
174
|
+
def criteria_for_receiving(criteria = {:timeout => DEFAULT_RECEIVER_TIMEOUT, :selector => ''})
|
175
|
+
# Valor default para timeout, caso nao tenha sido informado
|
176
|
+
@criteria_for_receiving[:timeout] = criteria[:timeout] || DEFAULT_RECEIVER_TIMEOUT
|
166
177
|
end
|
167
|
-
|
178
|
+
|
168
179
|
#
|
169
180
|
# Inicia a escuta de mensagens.
|
170
181
|
#
|
data/spec/spec_helper.rb
CHANGED