Author: davsclaus Date: Thu Mar 12 17:40:27 2009 New Revision: 752946 URL: http://svn.apache.org/viewvc?rev=752946&view=rev Log: Fixed a few bad package tangles.
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileComponent.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileDefaultSorter.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileEndpoint.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/FileProcessStrategyFactory.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategyFactory.java camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnExceptionDefinition.java Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileComponent.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileComponent.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileComponent.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileComponent.java Thu Mar 12 17:40:27 2009 @@ -110,7 +110,7 @@ ObjectHelper.notEmpty(reminder, "sortBy expression", this); // recursive add nested sorters - return GenericFileDefaultSorter.sortByFileLanguage(reminder, reverse, ignoreCase, createSortByComparator(it)); + return GenericFileDefaultSorter.sortByFileLanguage(getCamelContext(), reminder, reverse, ignoreCase, createSortByComparator(it)); } } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileDefaultSorter.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileDefaultSorter.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileDefaultSorter.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileDefaultSorter.java Thu Mar 12 17:40:27 2009 @@ -18,8 +18,9 @@ import java.util.Comparator; +import org.apache.camel.CamelContext; import org.apache.camel.Expression; -import org.apache.camel.language.simple.FileLanguage; +import org.apache.camel.spi.Language; import org.apache.camel.util.ObjectHelper; /** @@ -90,31 +91,34 @@ /** * Returns a new sory by file language expression * + * @param context the camel context * @param expression the file language expression * @param reverse true to reverse order * @return the comparator */ public static Comparator<GenericFileExchange> sortByFileLanguage( - final String expression, final boolean reverse) { - return sortByFileLanguage(expression, reverse, false, null); + CamelContext context, String expression, boolean reverse) { + return sortByFileLanguage(context, expression, reverse, false, null); } /** * Returns a new sory by file language expression * + * @param context the camel context * @param expression the file language expression * @param reverse true to reverse order * @param ignoreCase ignore case if comparing strings * @return the comparator */ public static Comparator<GenericFileExchange> sortByFileLanguage( - final String expression, final boolean reverse, final boolean ignoreCase) { - return sortByFileLanguage(expression, reverse, ignoreCase, null); + CamelContext context, String expression, boolean reverse, boolean ignoreCase) { + return sortByFileLanguage(context, expression, reverse, ignoreCase, null); } /** * Returns a new sort by file language expression * + * @param context the camel context * @param expression the file language expression * @param reverse true to reverse order * @param ignoreCase ignore case if comparing strings @@ -122,11 +126,12 @@ * @return the comparator */ public static Comparator<GenericFileExchange> sortByFileLanguage( - final String expression, final boolean reverse, + final CamelContext context, final String expression, final boolean reverse, final boolean ignoreCase, final Comparator<GenericFileExchange> nested) { return new Comparator<GenericFileExchange>() { public int compare(GenericFileExchange o1, GenericFileExchange o2) { - final Expression exp = FileLanguage.file(expression); + Language language = context.resolveLanguage("file"); + final Expression exp = language.createExpression(expression); Object result1 = exp.evaluate(o1); Object result2 = exp.evaluate(o2); int answer = ObjectHelper.compare(result1, result2, ignoreCase); Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileEndpoint.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileEndpoint.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileEndpoint.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileEndpoint.java Thu Mar 12 17:40:27 2009 @@ -23,14 +23,15 @@ import java.util.HashMap; import java.util.Map; +import org.apache.camel.CamelContext; import org.apache.camel.Component; import org.apache.camel.Exchange; import org.apache.camel.Expression; import org.apache.camel.Message; import org.apache.camel.Processor; import org.apache.camel.impl.ScheduledPollEndpoint; -import org.apache.camel.language.simple.FileLanguage; import org.apache.camel.spi.IdempotentRepository; +import org.apache.camel.spi.Language; import org.apache.camel.util.FactoryFinder; import org.apache.camel.util.FileUtil; import org.apache.camel.util.ObjectHelper; @@ -140,10 +141,10 @@ } try { - Method factoryMethod = factory.getMethod("createGenericFileProcessStrategy", Map.class); - return (GenericFileProcessStrategy<T>) ObjectHelper.invokeMethod(factoryMethod, null, getParamsAsMap()); + Method factoryMethod = factory.getMethod("createGenericFileProcessStrategy", CamelContext.class, Map.class); + return (GenericFileProcessStrategy<T>) ObjectHelper.invokeMethod(factoryMethod, null, getCamelContext(), getParamsAsMap()); } catch (NoSuchMethodException e) { - throw new TypeNotPresentException(factory.getSimpleName() + ".createGenericFileProcessStrategy(GenericFileEndpoint endpoint) method not found", e); + throw new TypeNotPresentException(factory.getSimpleName() + ".createGenericFileProcessStrategy method not found", e); } } @@ -213,7 +214,7 @@ */ public void setMove(String fileLanguageExpression) { String expression = configureMoveOrPreMoveExpression(fileLanguageExpression); - this.move = FileLanguage.file(expression); + this.move = createFileLangugeExpression(expression); } public Expression getPreMove() { @@ -230,7 +231,7 @@ */ public void setPreMove(String fileLanguageExpression) { String expression = configureMoveOrPreMoveExpression(fileLanguageExpression); - this.preMove = FileLanguage.file(expression); + this.preMove = createFileLangugeExpression(expression); } public Expression getFileName() { @@ -246,7 +247,7 @@ * {...@link org.apache.camel.language.simple.FileLanguage} */ public void setFileName(String fileLanguageExpression) { - this.fileName = FileLanguage.file(fileLanguageExpression); + this.fileName = createFileLangugeExpression(fileLanguageExpression); } public boolean isIdempotent() { @@ -294,7 +295,7 @@ } public void setSortBy(String expression, boolean reverse) { - setSortBy(GenericFileDefaultSorter.sortByFileLanguage(expression, reverse)); + setSortBy(GenericFileDefaultSorter.sortByFileLanguage(getCamelContext(), expression, reverse)); } public String getTempPrefix() { @@ -430,7 +431,7 @@ } // remove trailing slash - expression = FileUtil.stripTrailingSeparator(expression); + expression = FileUtil.stripTrailingSeparator(expression); StringBuilder sb = new StringBuilder(); @@ -444,7 +445,7 @@ // append only the filename (file:name can contain a relative path, so we must use onlyname) sb.append(getFileSeparator()); sb.append("${file:onlyname}"); - + return sb.toString(); } @@ -476,4 +477,9 @@ return params; } + private Expression createFileLangugeExpression(String expression) { + Language language = getCamelContext().resolveLanguage("file"); + return language.createExpression(expression); + } + } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/GenericFileProducer.java Thu Mar 12 17:40:27 2009 @@ -22,7 +22,7 @@ import org.apache.camel.Exchange; import org.apache.camel.Expression; import org.apache.camel.impl.DefaultProducer; -import org.apache.camel.language.simple.FileLanguage; +import org.apache.camel.spi.Language; import org.apache.camel.util.ExchangeHelper; import org.apache.camel.util.FileUtil; import org.apache.camel.util.ObjectHelper; @@ -160,7 +160,8 @@ if (log.isDebugEnabled()) { log.debug(Exchange.FILE_NAME + " contains a FileLanguage expression: " + name); } - expression = FileLanguage.file(name); + Language language = getEndpoint().getCamelContext().resolveLanguage("file"); + expression = language.createExpression(name); } } if (expression != null) { @@ -170,9 +171,8 @@ name = expression.evaluate(exchange, String.class); } - // flattern name - if (endpoint.isFlattern()) { + if (name != null && endpoint.isFlattern()) { int pos = name.lastIndexOf(File.separator); if (pos == -1) { pos = name.lastIndexOf('/'); Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/FileProcessStrategyFactory.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/FileProcessStrategyFactory.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/FileProcessStrategyFactory.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/FileProcessStrategyFactory.java Thu Mar 12 17:40:27 2009 @@ -19,10 +19,11 @@ import java.io.File; import java.util.Map; +import org.apache.camel.CamelContext; import org.apache.camel.Expression; import org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy; import org.apache.camel.component.file.GenericFileProcessStrategy; -import org.apache.camel.language.simple.FileLanguage; +import org.apache.camel.spi.Language; import org.apache.camel.util.ObjectHelper; public final class FileProcessStrategyFactory { @@ -30,7 +31,7 @@ private FileProcessStrategyFactory() { } - public static GenericFileProcessStrategy createGenericFileProcessStrategy(Map<String, Object> params) { + public static GenericFileProcessStrategy createGenericFileProcessStrategy(CamelContext context, Map<String, Object> params) { // We assume a value is present only if its value not null for String and 'true' for boolean boolean isNoop = params.get("noop") != null; @@ -64,8 +65,10 @@ // default strategy will move files in a .camel/ subfolder where the file was consumed GenericFileRenameProcessStrategy<File> strategy = new GenericFileRenameProcessStrategy<File>(); strategy.setExclusiveReadLockStrategy(getExclusiveReadLockStrategy(params)); - Expression exp = FileLanguage.file("${file:parent}/.camel/${file:onlyname}"); - strategy.setCommitRenamer(new GenericFileExpressionRenamer<File>(exp)); + // use context to lookup language to let it be loose coupled + Language language = context.resolveLanguage("file"); + Expression expression = language.createExpression("${file:parent}/.camel/${file:onlyname}"); + strategy.setCommitRenamer(new GenericFileExpressionRenamer<File>(expression)); return strategy; } } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategyFactory.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategyFactory.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategyFactory.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/file/strategy/GenericFileProcessStrategyFactory.java Thu Mar 12 17:40:27 2009 @@ -18,6 +18,7 @@ import java.util.Map; +import org.apache.camel.CamelContext; import org.apache.camel.Expression; import org.apache.camel.component.file.GenericFileExclusiveReadLockStrategy; import org.apache.camel.component.file.GenericFileProcessStrategy; @@ -29,7 +30,7 @@ } @SuppressWarnings("unchecked") - public static GenericFileProcessStrategy createGenericFileProcessStrategy(Map<String, Object> params) { + public static GenericFileProcessStrategy createGenericFileProcessStrategy(CamelContext context, Map<String, Object> params) { // We assume a value is present only if its value not null for String and 'true' for boolean boolean isNoop = params.get("noop") != null; Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnExceptionDefinition.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnExceptionDefinition.java?rev=752946&r1=752945&r2=752946&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnExceptionDefinition.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/model/OnExceptionDefinition.java Thu Mar 12 17:40:27 2009 @@ -35,8 +35,8 @@ import org.apache.camel.Processor; import org.apache.camel.Route; import org.apache.camel.builder.ErrorHandlerBuilder; +import org.apache.camel.builder.ExpressionBuilder; import org.apache.camel.builder.ExpressionClause; -import org.apache.camel.language.constant.ConstantLanguage; import org.apache.camel.processor.CatchProcessor; import org.apache.camel.processor.RedeliveryPolicy; import org.apache.camel.spi.RouteContext; @@ -156,8 +156,8 @@ * @return the builder */ public OnExceptionDefinition handled(boolean handled) { - ConstantLanguage constant = new ConstantLanguage(); - return handled(constant.createPredicate(Boolean.toString(handled))); + Expression expression = ExpressionBuilder.constantExpression(Boolean.toString(handled)); + return handled(expression); } /**