Author: mwebb
Date: Mon Mar 10 19:25:38 2008
New Revision: 635777
URL: http://svn.apache.org/viewvc?rev=635777&view=rev
Log:
added a configurable minimum connection timeout
Modified:
mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoConnector.java
Modified:
mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoConnector.java
URL:
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoConnector.java?rev=635777&r1=635776&r2=635777&view=diff
==============================================================================
---
mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoConnector.java
(original)
+++
mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoConnector.java
Mon Mar 10 19:25:38 2008
@@ -39,7 +39,7 @@
* Message-ID: <[EMAIL PROTECTED]>
* Subject: Re: connect timeout
*/
- private static final long MINIMUM_CONNECT_TIMEOUT = 50L;
+ private long minimumConnectTimeout = 50L;
private long connectTimeoutInMillis = 60*1000L; // 1 minute by default
private SocketAddress defaultRemoteAddress;
@@ -49,7 +49,27 @@
}
/**
+ * Returns the minimum connection timeout value for this connector
+ *
+ * @return
+ * The minimum time that this connector can have for a connection
+ * timeout in milliseconds.
+ */
+ public long getMinimumConnectTimeout() {
+ return minimumConnectTimeout;
+ }
+
+ public void setMinimumConnectTimeout(long minimumConnectTimeout) {
+ if( getConnectTimeoutMillis() < minimumConnectTimeout ){
+ this.connectTimeoutInMillis = minimumConnectTimeout;
+ }
+
+ this.minimumConnectTimeout = minimumConnectTimeout;
+ }
+
+ /**
* @deprecated
+ * Take a look at <tt>getConnectTimeoutMillis()</tt>
*/
public final int getConnectTimeout() {
return (int)connectTimeoutInMillis/1000;
@@ -61,25 +81,20 @@
/**
* @deprecated
+ * Take a look at <tt>setConnectTimeoutMillis(long)</tt>
*/
public final void setConnectTimeout(int connectTimeout) {
- if (connectTimeout <= 0) {
- throw new IllegalArgumentException("connectTimeout: "
- + connectTimeout);
- }
- this.connectTimeoutInMillis = connectTimeout*1000L;
+
+ setConnectTimeoutMillis( connectTimeout * 1000L );
}
/**
* Sets the connect timeout value in milliseconds.
*
- * @throws IllegalArgumentException if the value is smaller than
- * <tt>MINIMUM_CONNECT_TIMEOUT</tt>.
*/
public final void setConnectTimeoutMillis(long connectTimeoutInMillis) {
- if (connectTimeoutInMillis <= MINIMUM_CONNECT_TIMEOUT) {
- throw new IllegalArgumentException("connectTimeoutInMillis: " +
- connectTimeoutInMillis);
+ if (connectTimeoutInMillis <= minimumConnectTimeout) {
+ this.minimumConnectTimeout = connectTimeoutInMillis;
}
this.connectTimeoutInMillis = connectTimeoutInMillis;
}