You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2019/08/09 06:02:03 UTC
[camel-quarkus] branch master updated: Override
DefaultStreamCachingStrategy::resolveSpoolDirectory to avoid NPE
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/master by this push:
new 7ddcfd3 Override DefaultStreamCachingStrategy::resolveSpoolDirectory to avoid NPE
new d66aca3 Merge pull request #120 from lburgazzoli/management-name
7ddcfd3 is described below
commit 7ddcfd317ec8a2aea0d62598e5880d8d6c9e140d
Author: lburgazzoli <lb...@gmail.com>
AuthorDate: Thu Aug 8 23:27:51 2019 +0200
Override DefaultStreamCachingStrategy::resolveSpoolDirectory to avoid NPE
The default implementation of StreamCachingStrategy leverages the
ManagementNameStrategy to determine the name of the stream cache
spool directory but as there's no ManagementNameStrategy in Camel
Quarkus, it throws an NPE. The new method replaces the default
implementation with a simplified one
---
.../core/runtime/support/FastCamelContext.java | 24 +++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/runtime/support/FastCamelContext.java b/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/runtime/support/FastCamelContext.java
index d65a16d..2dfabfc 100644
--- a/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/runtime/support/FastCamelContext.java
+++ b/extensions/core/runtime/src/main/java/org/apache/camel/quarkus/core/runtime/support/FastCamelContext.java
@@ -20,6 +20,7 @@ import java.util.Collection;
import java.util.Map;
import java.util.Properties;
import java.util.concurrent.ExecutorService;
+import java.util.regex.Matcher;
import org.apache.camel.AggregationStrategy;
import org.apache.camel.AsyncProcessor;
@@ -102,6 +103,8 @@ import org.apache.camel.spi.TypeConverterRegistry;
import org.apache.camel.spi.UnitOfWorkFactory;
import org.apache.camel.spi.UuidGenerator;
import org.apache.camel.spi.ValidatorRegistry;
+import org.apache.camel.util.FilePathResolver;
+import org.apache.camel.util.StringHelper;
public class FastCamelContext extends AbstractCamelContext {
@@ -313,7 +316,26 @@ public class FastCamelContext extends AbstractCamelContext {
@Override
protected StreamCachingStrategy createStreamCachingStrategy() {
- return new DefaultStreamCachingStrategy();
+ return new DefaultStreamCachingStrategy() {
+ @Override
+ protected String resolveSpoolDirectory(String path) {
+ StringHelper.notEmpty(path, "path");
+
+ // must quote the names to have it work as literal replacement
+ String name = Matcher.quoteReplacement(getName());
+
+ // replace tokens
+ String answer = path;
+ answer = answer.replaceFirst("#camelId#", name);
+ answer = answer.replaceFirst("#name#", name);
+
+ if (answer.contains("#uuid#")) {
+ answer = answer.replaceFirst("#uuid#", getUuidGenerator().generateUuid());
+ }
+
+ return FilePathResolver.resolvePath(answer);
+ }
+ };
}
@Override