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/02/28 18:55:32 UTC

svn commit: r748894 - in /camel/trunk/camel-core/src: main/java/org/apache/camel/language/simple/FileExpressionBuilder.java main/java/org/apache/camel/language/simple/FileLanguage.java test/java/org/apache/camel/language/FileLanguageTest.java

Author: davsclaus
Date: Sat Feb 28 17:55:31 2009
New Revision: 748894

URL: http://svn.apache.org/viewvc?rev=748894&view=rev
Log:
CAMEL-1408: Fixes setting absolute paths using the file component.

Modified:
    camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileExpressionBuilder.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileLanguage.java
    camel/trunk/camel-core/src/test/java/org/apache/camel/language/FileLanguageTest.java

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileExpressionBuilder.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileExpressionBuilder.java?rev=748894&r1=748893&r2=748894&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileExpressionBuilder.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileExpressionBuilder.java Sat Feb 28 17:55:31 2009
@@ -134,6 +134,19 @@
         };
     }
 
+    public static Expression fileAbsoluteExpression() {
+        return new ExpressionAdapter() {
+            public Object evaluate(Exchange exchange) {
+                return exchange.getIn().getHeader("CamelFileAbsolute", Boolean.class);
+            }
+
+            @Override
+            public String toString() {
+                return "file:absolute";
+            }
+        };
+    }
+
     public static Expression fileCanoicalPathExpression() {
         return new ExpressionAdapter() {
             public Object evaluate(Exchange exchange) {

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileLanguage.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileLanguage.java?rev=748894&r1=748893&r2=748894&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileLanguage.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/language/simple/FileLanguage.java Sat Feb 28 17:55:31 2009
@@ -30,6 +30,7 @@
  * <li><tt>file:name.ext</tt> to access the file name extension</li>
  * <li><tt>file:parent</tt> to access the parent file name</li>
  * <li><tt>file:path</tt> to access the file path name</li>
+ * <li><tt>file:absolute</tt> is the file regarded as absolute or relative</li>
  * <li><tt>file:absolute.path</tt> to access the absolute file path name</li>
  * <li><tt>file:canonical.path</tt> to access the canonical path name</li>
  * <li><tt>file:length</tt> to access the file length as a Long type</li>
@@ -66,6 +67,8 @@
                 return FileExpressionBuilder.fileParentExpression();
             } else if (ObjectHelper.equal(remainder, "path")) {
                 return FileExpressionBuilder.filePathExpression();
+            } else if (ObjectHelper.equal(remainder, "absolute")) {
+                return FileExpressionBuilder.fileAbsoluteExpression();
             } else if (ObjectHelper.equal(remainder, "absolute.path")) {
                 return FileExpressionBuilder.fileAbsolutePathExpression();
             } else if (ObjectHelper.equal(remainder, "canonical.path")) {

Modified: camel/trunk/camel-core/src/test/java/org/apache/camel/language/FileLanguageTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/test/java/org/apache/camel/language/FileLanguageTest.java?rev=748894&r1=748893&r2=748894&view=diff
==============================================================================
--- camel/trunk/camel-core/src/test/java/org/apache/camel/language/FileLanguageTest.java (original)
+++ camel/trunk/camel-core/src/test/java/org/apache/camel/language/FileLanguageTest.java Sat Feb 28 17:55:31 2009
@@ -25,7 +25,6 @@
 import org.apache.camel.Exchange;
 import org.apache.camel.ExchangePattern;
 import org.apache.camel.LanguageTestSupport;
-import org.apache.camel.component.file.FileComponent;
 import org.apache.camel.component.file.FileConsumer;
 import org.apache.camel.component.file.FileEndpoint;
 import org.apache.camel.component.file.GenericFile;
@@ -66,6 +65,7 @@
         assertExpression("${file:name.noext}", "hello");
         assertExpression("${file:parent}", file.getParent());
         assertExpression("${file:path}", file.getPath());
+        assertExpression("${file:absolute}", file.isAbsolute());
         assertExpression("${file:absolute.path}", file.getAbsolutePath());
         assertExpression("${file:canonical.path}", file.getCanonicalPath());
         assertExpression("${file:length}", file.length());