diff options
Diffstat (limited to 'qpid/java/client/src/main/java/org/apache/qpid/jms/failover')
4 files changed, 32 insertions, 23 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverExchangeMethod.java b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverExchangeMethod.java index cb3ab718e9..a5eda29274 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverExchangeMethod.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverExchangeMethod.java @@ -20,15 +20,8 @@ */ package org.apache.qpid.jms.failover; -import java.net.InetAddress; -import java.util.ArrayList; -import java.util.List; - -import javax.jms.JMSException; -import javax.jms.Message; -import javax.jms.MessageConsumer; -import javax.jms.MessageListener; -import javax.jms.Session; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.apache.qpid.client.AMQAnyDestination; import org.apache.qpid.client.AMQBrokerDetails; @@ -36,8 +29,15 @@ import org.apache.qpid.framing.AMQShortString; import org.apache.qpid.jms.BrokerDetails; import org.apache.qpid.jms.Connection; import org.apache.qpid.jms.ConnectionURL; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; + +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageConsumer; +import javax.jms.MessageListener; +import javax.jms.Session; +import java.net.InetAddress; +import java.util.ArrayList; +import java.util.List; /** * When using the Failover exchange a single broker is supplied in the URL. @@ -127,9 +127,7 @@ public class FailoverExchangeMethod implements FailoverMethod, MessageListener for (String brokerEntry:list) { String[] urls = brokerEntry.substring(5) .split(","); - // Iterate until you find the correct transport - // Need to reconsider the logic when the C++ broker supports - // SSL URLs. + for (String url:urls) { String[] tokens = url.split(":"); diff --git a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverRoundRobinServers.java b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverRoundRobinServers.java index 41ba4974ec..84c1794723 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverRoundRobinServers.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverRoundRobinServers.java @@ -20,11 +20,12 @@ */ package org.apache.qpid.jms.failover; -import org.apache.qpid.jms.BrokerDetails; -import org.apache.qpid.jms.ConnectionURL; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.apache.qpid.jms.BrokerDetails; +import org.apache.qpid.jms.ConnectionURL; + public class FailoverRoundRobinServers implements FailoverMethod { private static final Logger _logger = LoggerFactory.getLogger(FailoverRoundRobinServers.class); @@ -49,8 +50,7 @@ public class FailoverRoundRobinServers implements FailoverMethod /** The current number of cycles performed. */ private int _currentCycleRetries = 0; - /** Array of BrokerDetail used to make connections. */ - protected ConnectionURL _connectionDetails; + private ConnectionURL _connectionDetails; public FailoverRoundRobinServers(ConnectionURL connectionDetails) { diff --git a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverSingleServer.java b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverSingleServer.java index d033a49f5c..1ef71eccba 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverSingleServer.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/FailoverSingleServer.java @@ -20,11 +20,12 @@ */ package org.apache.qpid.jms.failover; -import org.apache.qpid.jms.BrokerDetails; -import org.apache.qpid.jms.ConnectionURL; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.apache.qpid.jms.BrokerDetails; +import org.apache.qpid.jms.ConnectionURL; + public class FailoverSingleServer implements FailoverMethod { private static final Logger _logger = LoggerFactory.getLogger(FailoverSingleServer.class); @@ -36,10 +37,10 @@ public class FailoverSingleServer implements FailoverMethod private BrokerDetails _brokerDetail; /** The number of times to retry connecting to the sever */ - protected int _retries; + private int _retries; /** The current number of attempts made to the server */ - protected int _currentRetries = 0; + private int _currentRetries = 0; public FailoverSingleServer(ConnectionURL connectionDetails) @@ -64,6 +65,11 @@ public class FailoverSingleServer implements FailoverMethod _currentRetries = 0; } + protected void setCurrentRetries(int currentRetries) + { + _currentRetries = currentRetries; + } + public boolean failoverAllowed() { return _currentRetries < _retries; @@ -150,6 +156,11 @@ public class FailoverSingleServer implements FailoverMethod _retries = retries; } + public int getRetries() + { + return _retries; + } + public String methodName() { return "Single Server"; diff --git a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/NoFailover.java b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/NoFailover.java index 1231324397..82cb0f9153 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/NoFailover.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/jms/failover/NoFailover.java @@ -44,7 +44,7 @@ public class NoFailover extends FailoverSingleServer public void attainedConnection() { _connected=true; - _currentRetries = _retries; + setCurrentRetries(getRetries()); } @Override |