diff options
author | Robert Gemmell <robbie@apache.org> | 2010-05-31 16:01:24 +0000 |
---|---|---|
committer | Robert Gemmell <robbie@apache.org> | 2010-05-31 16:01:24 +0000 |
commit | 71098e50d6a4685205abc4937586ae414b4cee8d (patch) | |
tree | f56eab9d2a34cec6f272739c9f1b0780c5c26bf5 /java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java | |
parent | 68d06cb9f5f10f3679ae1fc3c7bde86881862c38 (diff) | |
download | qpid-python-71098e50d6a4685205abc4937586ae414b4cee8d.tar.gz |
QPID-2581: Update configuration manager to allow multiple plugins to handle the same configuration
Applied patch from Andrew Kennedy <andrew.international@gmail.com>
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@949779 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java')
-rwxr-xr-x | java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java b/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java index ca999ceb0b..675a6f6a91 100755 --- a/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java +++ b/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostConfigRecoveryHandler.java @@ -94,21 +94,29 @@ public class VirtualHostConfigRecoveryHandler implements ConfigurationRecoveryHa public void queue(String queueName, String owner, boolean exclusive, FieldTable arguments) { - AMQShortString queueNameShortString = new AMQShortString(queueName); - - AMQQueue q = _virtualHost.getQueueRegistry().getQueue(queueNameShortString); - - if (q == null) + try { - q = AMQQueueFactory.createAMQQueueImpl(queueNameShortString, true, owner == null ? null : new AMQShortString(owner), false, exclusive, - _virtualHost, arguments); - _virtualHost.getQueueRegistry().registerQueue(q); + AMQShortString queueNameShortString = new AMQShortString(queueName); + + AMQQueue q = _virtualHost.getQueueRegistry().getQueue(queueNameShortString); + + if (q == null) + { + q = AMQQueueFactory.createAMQQueueImpl(queueNameShortString, true, owner == null ? null : new AMQShortString(owner), false, _virtualHost, + arguments); + _virtualHost.getQueueRegistry().registerQueue(q); + } + + CurrentActor.get().message(_logSubject, TransactionLogMessages.TXN_1004(queueName, true)); + + //Record that we have a queue for recovery + _queueRecoveries.put(queueName, 0); + } + catch (AMQException e) + { + // TODO + throw new RuntimeException(e); } - - CurrentActor.get().message(_logSubject, TransactionLogMessages.TXN_1004(queueName, true)); - - //Record that we have a queue for recovery - _queueRecoveries.put(queueName, 0); } public ExchangeRecoveryHandler completeQueueRecovery() @@ -131,9 +139,9 @@ public class VirtualHostConfigRecoveryHandler implements ConfigurationRecoveryHa } catch (AMQException e) { + // TODO throw new RuntimeException(e); } - } public BindingRecoveryHandler completeExchangeRecovery() |