Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorslewis2009-10-26 19:18:35 +0000
committerslewis2009-10-26 19:18:35 +0000
commit31b3e05e9db8de54af1d5c4343a1ae8a04e7007c (patch)
tree97c239f5629e5b860e47d6d3917411ed5a280933
parente66a6d6a28789bdc43daa4e3d894875573faf277 (diff)
downloadorg.eclipse.ecf-I-HEAD-platform_feature-6-2009_10_26.tar.gz
org.eclipse.ecf-I-HEAD-platform_feature-6-2009_10_26.tar.xz
org.eclipse.ecf-I-HEAD-platform_feature-6-2009_10_26.zip
Added system properties for setting default connection and read timeouts. See bug 292995I-HEAD-platform_feature-6-2009_10_26
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientFileSystemBrowser.java2
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientOptions.java15
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientRetrieveFileTransfer.java52
3 files changed, 60 insertions, 9 deletions
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientFileSystemBrowser.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientFileSystemBrowser.java
index 8de27a741..36880c0d5 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientFileSystemBrowser.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientFileSystemBrowser.java
@@ -62,7 +62,7 @@ public class HttpClientFileSystemBrowser extends AbstractFileSystemBrowser {
// changing to 2 minutes (120000) as per bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=266246
// 10/26/2009: Added being able to set with system property with name org.eclipse.ecf.provider.filetransfer.httpclient.browse.connectTimeout
// for https://bugs.eclipse.org/bugs/show_bug.cgi?id=292995
- protected static final int DEFAULT_CONNECTION_TIMEOUT = new Integer(System.getProperty("org.eclipse.ecf.provider.filetransfer.httpclient.browse.connectTimeout", "120000")).intValue(); //$NON-NLS-1$ //$NON-NLS-2$;
+ protected static final int DEFAULT_CONNECTION_TIMEOUT = HttpClientOptions.BROWSE_DEFAULT_CONNECTION_TIMEOUT;
private static final String USERNAME_PREFIX = "Username:"; //$NON-NLS-1$
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientOptions.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientOptions.java
index 6a030df13..59d78ef0c 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientOptions.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientOptions.java
@@ -17,4 +17,19 @@ public interface HttpClientOptions {
// The property key is: org.eclipse.ecf.provider.filetransfer.httpclient.options.ForceNTLMProxy
// The value of the property must be non-null, but is not otherwise used.
public String FORCE_NTLM_PROP = "org.eclipse.ecf.provider.filetransfer.httpclient.options.ForceNTLMProxy"; //$NON-NLS-1$
+
+ // changing to 2 minutes (120000) as per bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=266246
+ // 10/26/2009: Added being able to set with system property with name org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.connectTimeout
+ // for https://bugs.eclipse.org/bugs/show_bug.cgi?id=292995
+ public static final int RETRIEVE_DEFAULT_CONNECTION_TIMEOUT = new Integer(System.getProperty("org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.connectTimeout", "120000")).intValue(); //$NON-NLS-1$ //$NON-NLS-2$
+ // changing to 2 minutes (120000) as per bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=266246
+ // 10/26/2009: Added being able to set with system property with name org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.readTimeout
+ // for https://bugs.eclipse.org/bugs/show_bug.cgi?id=292995
+ public static final int RETRIEVE_DEFAULT_READ_TIMEOUT = new Integer(System.getProperty("org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.readTimeout", "120000")).intValue(); //$NON-NLS-1$ //$NON-NLS-2$
+
+ // changing to 2 minutes (120000) as per bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=266246
+ // 10/26/2009: Added being able to set with system property with name org.eclipse.ecf.provider.filetransfer.httpclient.browse.connectTimeout
+ // for https://bugs.eclipse.org/bugs/show_bug.cgi?id=292995
+ public static final int BROWSE_DEFAULT_CONNECTION_TIMEOUT = new Integer(System.getProperty("org.eclipse.ecf.provider.filetransfer.httpclient.browse.connectTimeout", "120000")).intValue(); //$NON-NLS-1$ //$NON-NLS-2$;
+
}
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientRetrieveFileTransfer.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientRetrieveFileTransfer.java
index 8270e9c87..64e681fca 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientRetrieveFileTransfer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient/src/org/eclipse/ecf/provider/filetransfer/httpclient/HttpClientRetrieveFileTransfer.java
@@ -266,11 +266,11 @@ public class HttpClientRetrieveFileTransfer extends AbstractRetrieveFileTransfer
// changing to 2 minutes (120000) as per bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=266246
// 10/26/2009: Added being able to set with system property with name org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.connectTimeout
// for https://bugs.eclipse.org/bugs/show_bug.cgi?id=292995
- protected static final int DEFAULT_CONNECTION_TIMEOUT = new Integer(System.getProperty("org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.connectTimeout", "120000")).intValue(); //$NON-NLS-1$ //$NON-NLS-2$
+ protected static final int DEFAULT_CONNECTION_TIMEOUT = HttpClientOptions.RETRIEVE_DEFAULT_CONNECTION_TIMEOUT;
// changing to 2 minutes (120000) as per bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=266246
// 10/26/2009: Added being able to set with system property with name org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.readTimeout
// for https://bugs.eclipse.org/bugs/show_bug.cgi?id=292995
- protected static final int DEFAULT_READ_TIMEOUT = new Integer(System.getProperty("org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.readTimeout", "120000")).intValue(); //$NON-NLS-1$ //$NON-NLS-2$
+ protected static final int DEFAULT_READ_TIMEOUT = HttpClientOptions.RETRIEVE_DEFAULT_READ_TIMEOUT;
protected static final int HTTP_PORT = 80;
@@ -563,6 +563,40 @@ public class HttpClientRetrieveFileTransfer extends AbstractRetrieveFileTransfer
return (System.getProperties().getProperty(HttpClientOptions.FORCE_NTLM_PROP) != null);
}
+ protected int getSocketReadTimeout() {
+ int result = DEFAULT_READ_TIMEOUT;
+ Map localOptions = getOptions();
+ if (localOptions != null) {
+ // See if the property is present, if so set
+ Object o = localOptions.get("org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.readTimeout"); //$NON-NLS-1$
+ if (o != null) {
+ if (o instanceof Integer) {
+ result = ((Integer) o).intValue();
+ } else if (o instanceof String) {
+ result = new Integer(((String) o)).intValue();
+ }
+ }
+ }
+ return result;
+ }
+
+ protected int getConnectTimeout() {
+ int result = DEFAULT_CONNECTION_TIMEOUT;
+ Map localOptions = getOptions();
+ if (localOptions != null) {
+ // See if the property is present, if so set
+ Object o = localOptions.get("org.eclipse.ecf.provider.filetransfer.httpclient.retrieve.connectTimeout"); //$NON-NLS-1$
+ if (o != null) {
+ if (o instanceof Integer) {
+ result = ((Integer) o).intValue();
+ } else if (o instanceof String) {
+ result = new Integer(((String) o)).intValue();
+ }
+ }
+ }
+ return result;
+ }
+
/* (non-Javadoc)
* @see org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer#openStreams()
*/
@@ -575,9 +609,10 @@ public class HttpClientRetrieveFileTransfer extends AbstractRetrieveFileTransfer
int code = -1;
try {
- httpClient.getHttpConnectionManager().getParams().setSoTimeout(DEFAULT_READ_TIMEOUT);
- httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(DEFAULT_CONNECTION_TIMEOUT);
- httpClient.getParams().setConnectionManagerTimeout(DEFAULT_CONNECTION_TIMEOUT);
+ httpClient.getHttpConnectionManager().getParams().setSoTimeout(getSocketReadTimeout());
+ int connectTimeout = getConnectTimeout();
+ httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(connectTimeout);
+ httpClient.getParams().setConnectionManagerTimeout(connectTimeout);
setupAuthentication(urlString);
@@ -800,9 +835,10 @@ public class HttpClientRetrieveFileTransfer extends AbstractRetrieveFileTransfer
int code = -1;
try {
- httpClient.getHttpConnectionManager().getParams().setSoTimeout(DEFAULT_READ_TIMEOUT);
- httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(DEFAULT_CONNECTION_TIMEOUT);
- httpClient.getParams().setConnectionManagerTimeout(DEFAULT_CONNECTION_TIMEOUT);
+ httpClient.getHttpConnectionManager().getParams().setSoTimeout(getSocketReadTimeout());
+ int connectTimeout = getConnectTimeout();
+ httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(connectTimeout);
+ httpClient.getParams().setConnectionManagerTimeout(connectTimeout);
CredentialsProvider credProvider = new ECFCredentialsProvider();
setupAuthentication(urlString);

Back to the top