You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2009/02/06 06:30:00 UTC
svn commit: r741417 - in /camel/trunk:
camel-core/src/main/java/org/apache/camel/component/file/
components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/
Author: ningjiang
Date: Fri Feb 6 05:29:59 2009
New Revision: 741417
URL: http://svn.apache.org/viewvc?rev=741417&view=rev
Log:
CAMEL-1318 fixed the ftp test errors in Windows box
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFile.java
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConfiguration.java
camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java
camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFile.java
camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFileConfiguration.java
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFile.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFile.java?rev=741417&r1=741416&r2=741417&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFile.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFile.java Fri Feb 6 05:29:59 2009
@@ -35,7 +35,7 @@
private long fileLength;
private long lastModified;
private T file;
- private GenericFileBinding<T> binding;
+ private GenericFileBinding<T> binding;
@Override
public GenericFile<T> clone() {
@@ -65,6 +65,14 @@
result.setBody(source.getBody());
result.setBinding(source.getBinding());
return result;
+ }
+
+ public boolean needToNormalize() {
+ return true;
+ }
+
+ public String getFileSeparator() {
+ return File.separator;
}
/**
@@ -74,29 +82,33 @@
* @param newName the new name
*/
public void changeFileName(String newName) {
- // must normalize path to cater for Windows and other OS
- newName = FileUtil.normalizePath(newName);
+
+ newName = needToNormalize()
+ // must normalize path to cater for Windows and other OS
+ ? FileUtil.normalizePath(newName)
+ // for the remote file we don't need to do that
+ : newName;
- setAbsoluteFileName(getParent() + File.separator + newName);
+ setAbsoluteFileName(getParent() + getFileSeparator() + newName);
// relative name is a bit more complex to set as newName itself can contain
// folders we need to consider as well
String baseNewName = null;
- if (newName.indexOf(File.separator) != -1) {
- baseNewName = newName.substring(0, newName.lastIndexOf(File.separator));
- newName = newName.substring(newName.lastIndexOf(File.separator) + 1);
+ if (newName.indexOf(getFileSeparator()) != -1) {
+ baseNewName = newName.substring(0, newName.lastIndexOf(getFileSeparator()));
+ newName = newName.substring(newName.lastIndexOf(getFileSeparator()) + 1);
}
- if (relativeFileName.indexOf(File.separator) != -1) {
+ if (relativeFileName.indexOf(getFileSeparator()) != -1) {
String relative = relativeFileName.substring(0, relativeFileName.lastIndexOf(File.separator));
if (baseNewName != null) {
- setRelativeFileName(relative + File.separator + baseNewName + File.separator + newName);
+ setRelativeFileName(relative + getFileSeparator() + baseNewName + getFileSeparator() + newName);
} else {
- setRelativeFileName(relative + File.separator + newName);
+ setRelativeFileName(relative + getFileSeparator() + newName);
}
} else {
if (baseNewName != null) {
- setRelativeFileName(baseNewName + File.separator + newName);
+ setRelativeFileName(baseNewName + getFileSeparator() + newName);
} else {
setRelativeFileName(newName);
}
@@ -154,8 +166,8 @@
}
public String getParent() {
- if (getAbsoluteFileName().lastIndexOf(File.separator) > 0) {
- return getAbsoluteFileName().substring(0, getAbsoluteFileName().lastIndexOf(File.separator));
+ if (getAbsoluteFileName().lastIndexOf(getFileSeparator()) > 0) {
+ return getAbsoluteFileName().substring(0, getAbsoluteFileName().lastIndexOf(getFileSeparator()));
} else {
return "";
}
@@ -173,8 +185,13 @@
}
public void setAbsoluteFileName(String absoluteFileName) {
- // must normalize path to cater for Windows and other OS
- this.absoluteFileName = FileUtil.normalizePath(absoluteFileName);
+
+ this.absoluteFileName = needToNormalize()
+ // must normalize path to cater for Windows and other OS
+ ? FileUtil.normalizePath(absoluteFileName)
+ // we don't need to do that for Remote File
+ : absoluteFileName;
+
}
public String getAbsoluteFileName() {
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConfiguration.java?rev=741417&r1=741416&r2=741417&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConfiguration.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConfiguration.java Fri Feb 6 05:29:59 2009
@@ -22,6 +22,9 @@
public class GenericFileConfiguration {
private String file;
+ public boolean needToNormalize() {
+ return true;
+ }
public void configure(URI uri) {
setFile(uri.getPath());
@@ -31,9 +34,12 @@
return file;
}
- public void setFile(String file) {
- // must normalize path to cater for Windows and other OS
- this.file = FileUtil.normalizePath(file);
+ public void setFile(String file) {
+ this.file = needToNormalize()
+ // must normalize path to cater for Windows and other OS
+ ? FileUtil.normalizePath(file)
+ // for the remote file we don't need to do that
+ : file;
}
public String toString() {
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java?rev=741417&r1=741416&r2=741417&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileConsumer.java Fri Feb 6 05:29:59 2009
@@ -57,7 +57,7 @@
// gather list of files to process
List<GenericFile<T>> files = new ArrayList<GenericFile<T>>();
- String name = endpoint.getConfiguration().getFile();
+ String name = endpoint.getConfiguration().getFile();
boolean isDirectory = endpoint.isDirectory();
if (isDirectory) {
pollDirectory(name, files);
Modified: camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFile.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFile.java?rev=741417&r1=741416&r2=741417&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFile.java (original)
+++ camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFile.java Fri Feb 6 05:29:59 2009
@@ -16,6 +16,8 @@
*/
package org.apache.camel.component.file.remote;
+import java.io.File;
+
import org.apache.camel.component.file.GenericFile;
/**
@@ -34,6 +36,15 @@
public void setHostname(String hostname) {
this.hostname = hostname;
}
+
+ @Override
+ public boolean needToNormalize() {
+ return false;
+ }
+
+ public String getFileSeparator() {
+ return "/";
+ }
public RemoteFile<T> copyFrom(RemoteFile<T> source) {
RemoteFile<T> result = (RemoteFile<T>) source.clone();
Modified: camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFileConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFileConfiguration.java?rev=741417&r1=741416&r2=741417&view=diff
==============================================================================
--- camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFileConfiguration.java (original)
+++ camel/trunk/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/RemoteFileConfiguration.java Fri Feb 6 05:29:59 2009
@@ -38,6 +38,11 @@
public RemoteFileConfiguration(URI uri) {
configure(uri);
}
+
+ @Override
+ public boolean needToNormalize() {
+ return false;
+ }
@Override
public void configure(URI uri) {