lib/messaging.rb in leandrosilva-sparrow-1.0.2 vs lib/messaging.rb in leandrosilva-sparrow-1.0.3
- old
+ new
@@ -137,45 +137,53 @@
# acho que agora ta bem proximo do que deve ser.)
#
class Listener < Base
include MessageListener
+ attr_reader :connection_factory_name, :destination_name, :criteria_to_receiving
+
#
# Estes parametros serao injetados pelo listener manager de acordo com o
# que houver sido definido pelos metodos connection_factory_name e destination_name.
#
def initialize(connection_factory, destination)
- super(connection_factory, destination)
+ super(connection_factory, destination)
+
+ @connection_factory_name = 'undefined'
+ @destination_name = 'undefined'
+ @criteria_to_receiving = {}
end
#
# Nome JNDI da connection factory que ser usada para criar conexoes JMS.
#
# Invariavelmente deve ser usado pelas subclasses para informar qual devera
# ser a connection factory usada por esse listener.
#
- def connection_factory_name(name)
+ def use_connection_factory(jndi_name)
+ @connection_factory_name = jndi_name
+ end
#
# Nome JNDI do destino JMS que sera escutado.
#
# Invariavelmente deve ser usado pelas subclasses, para informar o nome
# da queue ou topico que sera escutado.
#
- def destination_name(name)
- @destination_name = name
+ def listen_to_destination(jndi_name)
+ @destination_name = jndi_name
end
#
# Criterios de selecao de mensagens, seguindo o padrao JMS.
#
# Invariavelmente as subclasses precisam usar esse metodo para definir
# os criterios de recebimento que este listener levara em conta.
#
- def criteria_for_receiving(criteria = {:timeout => DEFAULT_RECEIVER_TIMEOUT, :selector => ''})
- # Valor default para timeout, caso nao tenha sido informado
- @criteria_for_receiving[:timeout] = criteria[:timeout] || DEFAULT_RECEIVER_TIMEOUT
+ def receive_only_in_criteria(criteria = {:timeout => DEFAULT_RECEIVER_TIMEOUT, :selector => ''})
+ # Valor default para timeout, caso nao tenha sido informado
+ @criteria_to_receiving[:timeout] = criteria[:timeout] || DEFAULT_RECEIVER_TIMEOUT
end
#
# Inicia a escuta de mensagens.
#
@@ -234,5 +242,6 @@
respond_to? :get_long
end
end
end
end
+