Fix for https://bugs.eclipse.org/bugs/show_bug.cgi?id=578678

Change-Id: Id0760122758b74ad7cb80fa77b72e64337f6b624
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/META-INF/MANIFEST.MF b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/META-INF/MANIFEST.MF
index dcc54bd..43a28cd 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/META-INF/MANIFEST.MF
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/META-INF/MANIFEST.MF
@@ -4,7 +4,7 @@
 Bundle-Vendor: %plugin.provider
 Bundle-SymbolicName: org.eclipse.ecf.provider.filetransfer.httpclient45;singleton:=true
 Automatic-Module-Name: org.eclipse.ecf.provider.filetransfer.httpclient45
-Bundle-Version: 1.0.500.qualifier
+Bundle-Version: 1.0.600.qualifier
 Bundle-Localization: plugin
 Bundle-Activator: org.eclipse.ecf.internal.provider.filetransfer.httpclient45.Activator
 Bundle-ClassPath: .
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/pom.xml b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/pom.xml
index 0667bfb..e249159 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/pom.xml
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/pom.xml
@@ -9,7 +9,7 @@
     <relativePath>../../../</relativePath>
   </parent>
   <artifactId>org.eclipse.ecf.provider.filetransfer.httpclient45</artifactId>
-  <version>1.0.500-SNAPSHOT</version>
+  <version>1.0.600-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 
      <build>
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/src/org/eclipse/ecf/provider/filetransfer/httpclient45/HttpClientRetrieveFileTransfer.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/src/org/eclipse/ecf/provider/filetransfer/httpclient45/HttpClientRetrieveFileTransfer.java
index ec02d43..16539fe 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/src/org/eclipse/ecf/provider/filetransfer/httpclient45/HttpClientRetrieveFileTransfer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient45/src/org/eclipse/ecf/provider/filetransfer/httpclient45/HttpClientRetrieveFileTransfer.java
@@ -193,7 +193,7 @@
 			try {
 				httpResponse.close();
 			} catch (final IOException e) {
-				Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+				Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, String.format("hardClose url=%s", remoteFileURL), e)); //$NON-NLS-1$
 			}
 		}
 
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/META-INF/MANIFEST.MF b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/META-INF/MANIFEST.MF
index 8bb678c..a609cd3 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/META-INF/MANIFEST.MF
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %plugin.name
 Bundle-SymbolicName: org.eclipse.ecf.provider.filetransfer.httpclient5;singleton:=true
-Bundle-Version: 1.0.200.qualifier
+Bundle-Version: 1.0.300.qualifier
 Bundle-Vendor: %plugin.vendor
 Bundle-Localization: plugin
 Automatic-Module-Name: org.eclipse.ecf.provider.filetransfer.httpclient5
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/pom.xml b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/pom.xml
index ce75535..154da98 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/pom.xml
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/pom.xml
@@ -9,7 +9,7 @@
     <relativePath>../../../</relativePath>
   </parent>
   <artifactId>org.eclipse.ecf.provider.filetransfer.httpclient5</artifactId>
-  <version>1.0.200-SNAPSHOT</version>
+  <version>1.0.300-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 
      <build>
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/src/org/eclipse/ecf/provider/filetransfer/httpclient5/HttpClientRetrieveFileTransfer.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/src/org/eclipse/ecf/provider/filetransfer/httpclient5/HttpClientRetrieveFileTransfer.java
index 0e5d707..3693a66 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/src/org/eclipse/ecf/provider/filetransfer/httpclient5/HttpClientRetrieveFileTransfer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient5/src/org/eclipse/ecf/provider/filetransfer/httpclient5/HttpClientRetrieveFileTransfer.java
@@ -197,7 +197,7 @@
 			try {
 				httpResponse.close();
 			} catch (final IOException e) {
-				Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+				Activator.getDefault().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, IStatus.WARNING, String.format("hardClose httpResponse.close() exception. url=%s", remoteFileURL), e)); //$NON-NLS-1$
 			}
 		}
 
@@ -206,7 +206,7 @@
 			if (localFileContents != null && closeOutputStream)
 				localFileContents.close();
 		} catch (final IOException e) {
-			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, String.format("hardClose localFileContents.close() exception. url=%s",remoteFileURL), e)); //$NON-NLS-1$
 		}
 		// clear input and output streams
 		remoteFileContents = null;
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer/META-INF/MANIFEST.MF b/providers/bundles/org.eclipse.ecf.provider.filetransfer/META-INF/MANIFEST.MF
index 3ea041e..194e0e7 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer/META-INF/MANIFEST.MF
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %plugin.name
 Bundle-SymbolicName: org.eclipse.ecf.provider.filetransfer;singleton:=true
 Automatic-Module-Name: org.eclipse.ecf.provider.filetransfer
-Bundle-Version: 3.2.700.qualifier
+Bundle-Version: 3.2.800.qualifier
 Bundle-Activator: org.eclipse.ecf.internal.provider.filetransfer.Activator
 Bundle-Vendor: %plugin.provider
 Bundle-Localization: plugin
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer/pom.xml b/providers/bundles/org.eclipse.ecf.provider.filetransfer/pom.xml
index 92eacd1..c97b642 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer/pom.xml
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer/pom.xml
@@ -10,6 +10,6 @@
   </parent>
   <groupId>org.eclipse.ecf</groupId>
   <artifactId>org.eclipse.ecf.provider.filetransfer</artifactId>
-  <version>3.2.700-SNAPSHOT</version>
+  <version>3.2.800-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.java
index 7652f7d..79d57e9 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/outgoing/AbstractOutgoingFileTransfer.java
@@ -159,13 +159,13 @@
 			if (remoteFileContents != null)
 				remoteFileContents.close();
 		} catch (final IOException e) {
-			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+			Activator.getDefault().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, IStatus.WARNING, String.format("hardClose url=%s", remoteFileURL), e)); //$NON-NLS-1$
 		}
 		try {
 			if (localFileContents != null)
 				localFileContents.close();
 		} catch (final IOException e) {
-			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, String.format("hardClose url=%s", remoteFileURL), e)); //$NON-NLS-1$
 		}
 		job = null;
 		remoteFileContents = null;
diff --git a/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.java b/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.java
index fd34c99..e620f52 100644
--- a/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.java
+++ b/providers/bundles/org.eclipse.ecf.provider.filetransfer/src/org/eclipse/ecf/provider/filetransfer/retrieve/AbstractRetrieveFileTransfer.java
@@ -338,13 +338,13 @@
 			if (remoteFileContents != null)
 				remoteFileContents.close();
 		} catch (final IOException e) {
-			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+			Activator.getDefault().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, IStatus.WARNING, String.format("hardClose url=%s", remoteFileURL), e)); //$NON-NLS-1$
 		}
 		try {
 			if (localFileContents != null && closeOutputStream)
 				localFileContents.close();
 		} catch (final IOException e) {
-			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, "hardClose", e)); //$NON-NLS-1$
+			Activator.getDefault().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, IStatus.ERROR, String.format("hardClose url=%s", remoteFileURL), e)); //$NON-NLS-1$
 		}
 		// leave job intact to ensure only one done event is fired
 		remoteFileContents = null;
diff --git a/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml b/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml
index 1a0428e..b2a5b32 100644
--- a/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml
+++ b/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.ecf.filetransfer.httpclient45.feature"
       label="%featureName"
-      version="1.1.0.qualifier"
+      version="1.1.100.qualifier"
       provider-name="%providerName"
       license-feature="org.eclipse.license"
       license-feature-version="0.0.0">
diff --git a/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/pom.xml b/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/pom.xml
index ca1da82..5740436 100644
--- a/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/pom.xml
+++ b/releng/features/org.eclipse.ecf.filetransfer.httpclient45.feature/pom.xml
@@ -9,6 +9,6 @@
     <relativePath>../../../</relativePath>
   </parent>
   <artifactId>org.eclipse.ecf.filetransfer.httpclient45.feature</artifactId>
-  <version>1.1.0-SNAPSHOT</version>
+  <version>1.1.100-SNAPSHOT</version>
   <packaging>eclipse-feature</packaging>
 </project>
diff --git a/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/feature.xml b/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/feature.xml
index b5e996c..3c912c0 100644
--- a/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/feature.xml
+++ b/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.ecf.filetransfer.httpclient5.feature"
       label="%featureName"
-      version="1.1.500.qualifier"
+      version="1.1.600.qualifier"
       provider-name="%providerName"
       license-feature="org.eclipse.license"
       license-feature-version="0.0.0">
diff --git a/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/pom.xml b/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/pom.xml
index 80353bf..ae098d4 100644
--- a/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/pom.xml
+++ b/releng/features/org.eclipse.ecf.filetransfer.httpclient5.feature/pom.xml
@@ -10,5 +10,5 @@
   </parent>
   <artifactId>org.eclipse.ecf.filetransfer.httpclient5.feature</artifactId>
   <packaging>eclipse-feature</packaging>
-  <version>1.1.500-SNAPSHOT</version>
+  <version>1.1.600-SNAPSHOT</version>
 </project>
diff --git a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTest.java b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTest.java
index ec3182a..5672bd7 100644
--- a/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTest.java
+++ b/tests/bundles/org.eclipse.ecf.tests.filetransfer/src/org/eclipse/ecf/tests/filetransfer/URLRetrieveTest.java
@@ -206,17 +206,23 @@
 		testReceive(url);
 	}
 
+	// Invalid test as double-slash is not a legal in the path section of a URI (see RFC2396, sections 3.2, 3.4). 
+	/*
 	public void testReceiveNonCanonicalURLPath() throws Exception {
 		//addProxy("composent.com",3129,"foo\\bar","password");
 		testReceive(HTTP_RETRIEVE_NON_CANONICAL_URL);
 	}
+	*/
 
-	public void testReceiveNonCanonicalURLPathLocalHost() throws Exception {
+	// Invalid test as double-slash is not a legal in the path section of a URI (see RFC2396, sections 3.2, 3.4). 
+	/*
+ 	void testReceiveNonCanonicalURLPathLocalHost() throws Exception {
 		String url = server.getServerURL() + "//foo";
 		assertTrue(url, url.matches("\\Ahttp://localhost:[0-9]+//foo\\Z"));
 		testReceive(url);
 	}
-
+	*/
+	
 	public void testFTPReceiveFile() throws Exception {
 		testReceive(FTP_RETRIEVE);
 	}