You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2009/01/27 08:40:22 UTC
svn commit: r738019 - in /camel/trunk/components/camel-ftp/src:
main/java/org/apache/camel/component/file/remote/
test/java/org/apache/camel/component/file/remote/
Author: davsclaus
Date: Tue Jan 27 07:40:21 2009
New Revision: 738019
URL: http://svn.apache.org/viewvc?rev=738019&view=rev
Log:
CAMEL-1296: camel-ftp should condigure the endpoint with the full uri (caused by CAMEL-941).
Modified:
camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpRemoteFileComponent.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpConsumerMultipleDirectoriesTest.java
camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/UriConfigurationTest.java
Modified: camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpRemoteFileComponent.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpRemoteFileComponent.java?rev=738019&r1=738018&r2=738019&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpRemoteFileComponent.java (original)
+++ camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpRemoteFileComponent.java Tue Jan 27 07:40:21 2009
@@ -38,15 +38,17 @@
@Override
protected GenericFileEndpoint<FTPFile> buildFileEndpoint(String uri, String remaining, Map parameters) throws Exception {
- // get the uri part before the options as they can be non URI valid such
- // as the expression using $ chars
+ // get the base uri part before the options as they can be non URI valid such as the expression using $ chars
+ // and the URI constructor will regard $ as an illegal character and we dont want to enforce end users to
+ // to espace the $ for the expression (file language)
+ String baseUri = uri;
if (uri.indexOf("?") != -1) {
- uri = uri.substring(0, uri.indexOf("?"));
+ baseUri = uri.substring(0, uri.indexOf("?"));
}
- // lets make sure we create a new configuration as each endpoint can
- // customize its own version
- FtpRemoteFileConfiguration config = new FtpRemoteFileConfiguration(new URI(uri));
+ // lets make sure we create a new configuration as each endpoint can customize its own version
+ // must pass on baseUri to the configuration (see above)
+ FtpRemoteFileConfiguration config = new FtpRemoteFileConfiguration(new URI(baseUri));
FtpRemoteFileOperations operations = new FtpRemoteFileOperations();
return new FtpRemoteFileEndpoint(uri, this, operations, config);
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpConsumerMultipleDirectoriesTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpConsumerMultipleDirectoriesTest.java?rev=738019&r1=738018&r2=738019&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpConsumerMultipleDirectoriesTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpConsumerMultipleDirectoriesTest.java Tue Jan 27 07:40:21 2009
@@ -50,19 +50,19 @@
RemoteFileExchange exchange = (RemoteFileExchange) mock.getExchanges().get(0);
RemoteFile file = (RemoteFile) exchange.getGenericFile();
- assertEquals("multidir/bye.txt", file.getAbsoluteFileName());
+ assertEquals("/multidir/bye.txt", file.getAbsoluteFileName());
assertEquals("bye.txt", file.getRelativeFileName());
assertEquals("bye.txt", file.getFileName());
exchange = (RemoteFileExchange) mock.getExchanges().get(1);
file = (RemoteFile) exchange.getGenericFile();
- assertEquals("multidir/sub/hello.txt", file.getAbsoluteFileName());
+ assertEquals("/multidir/sub/hello.txt", file.getAbsoluteFileName());
assertEquals("sub/hello.txt", file.getRelativeFileName());
assertEquals("hello.txt", file.getFileName());
exchange = (RemoteFileExchange) mock.getExchanges().get(2);
file = (RemoteFile) exchange.getGenericFile();
- assertEquals("multidir/sub/sub2/godday.txt", file.getAbsoluteFileName());
+ assertEquals("/multidir/sub/sub2/godday.txt", file.getAbsoluteFileName());
assertEquals("sub/sub2/godday.txt", file.getRelativeFileName());
assertEquals("godday.txt", file.getFileName());
}
Modified: camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/UriConfigurationTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/UriConfigurationTest.java?rev=738019&r1=738018&r2=738019&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/UriConfigurationTest.java (original)
+++ camel/trunk/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/UriConfigurationTest.java Tue Jan 27 07:40:21 2009
@@ -40,7 +40,7 @@
assertNull(config.getUsername());
assertNull(config.getPassword());
assertEquals(false, config.isBinary());
- assertEquals(true, config.isDirectory());
+ assertEquals(true, ftpEndpoint.isDirectory());
}
public void testSftpConfigurationDefaults() {
@@ -55,7 +55,7 @@
assertNull(config.getUsername());
assertNull(config.getPassword());
assertEquals(false, config.isBinary());
- assertEquals(true, config.isDirectory());
+ assertEquals(true, sftpEndpoint.isDirectory());
}
public void testFtpExplicitConfiguration() {
@@ -70,7 +70,7 @@
assertEquals("user", config.getUsername());
assertEquals("secret", config.getPassword());
assertEquals(true, config.isBinary());
- assertEquals(false, config.isDirectory());
+ assertEquals(false, ftpEndpoint.isDirectory());
}
public void testSftpExplicitConfiguration() {
@@ -85,18 +85,18 @@
assertEquals("user", config.getUsername());
assertEquals("secret", config.getPassword());
assertEquals(true, config.isBinary());
- assertEquals(false, config.isDirectory());
+ assertEquals(false, sftpEndpoint.isDirectory());
}
public void testRemoteFileEndpointFiles() {
- assertRemoteFileEndpointFile("ftp://hostname/foo/bar", "foo/bar");
- assertRemoteFileEndpointFile("ftp://hostname/foo/", "foo/");
- assertRemoteFileEndpointFile("ftp://hostname/foo", "foo");
- assertRemoteFileEndpointFile("ftp://hostname/", "");
+ assertRemoteFileEndpointFile("ftp://hostname/foo/bar", "/foo/bar");
+ assertRemoteFileEndpointFile("ftp://hostname/foo/", "/foo/");
+ assertRemoteFileEndpointFile("ftp://hostname/foo", "/foo");
+ assertRemoteFileEndpointFile("ftp://hostname/", "/");
assertRemoteFileEndpointFile("ftp://hostname", "");
- assertRemoteFileEndpointFile("ftp://hostname//", "/");
- assertRemoteFileEndpointFile("ftp://hostname//foo/bar", "/foo/bar");
- assertRemoteFileEndpointFile("sftp://user@hostname:123//foo/bar?password=secret", "/foo/bar");
+ assertRemoteFileEndpointFile("ftp://hostname//", "//");
+ assertRemoteFileEndpointFile("ftp://hostname//foo/bar", "//foo/bar");
+ assertRemoteFileEndpointFile("sftp://user@hostname:123//foo/bar?password=secret", "//foo/bar");
}
private void assertRemoteFileEndpointFile(String endpointUri, String expectedFile) {
@@ -119,7 +119,7 @@
assertEquals("user", config.getUsername());
assertEquals("secret", config.getPassword());
assertEquals(true, config.isBinary());
- assertEquals(false, config.isDirectory());
+ assertEquals(false, sftpEndpoint.isDirectory());
assertEquals("/home/janstey/.ssh/known_hosts", config.getKnownHostsFile());
}
}