You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by or...@apache.org on 2023/04/03 14:54:15 UTC
[camel] 02/03: CAMEL-15105: move ProcessorExchangeFactory ownership to the context extension
This is an automated email from the ASF dual-hosted git repository.
orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit eedaeb8b4bcea85e91d0d6af050b6949cf2b2c26
Author: Otavio Rodolfo Piske <an...@gmail.com>
AuthorDate: Mon Apr 3 14:53:17 2023 +0200
CAMEL-15105: move ProcessorExchangeFactory ownership to the context extension
---
.../org/apache/camel/impl/engine/AbstractCamelContext.java | 2 --
.../camel/impl/engine/DefaultCamelContextExtension.java | 11 ++++++-----
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java
index d3c4ff7523e..b343ddd8161 100644
--- a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java
+++ b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/AbstractCamelContext.java
@@ -207,7 +207,6 @@ public abstract class AbstractCamelContext extends BaseService
volatile DeferServiceFactory deferServiceFactory;
volatile AnnotationBasedProcessorFactory annotationBasedProcessorFactory;
volatile ExchangeFactoryManager exchangeFactoryManager;
- volatile ProcessorExchangeFactory processorExchangeFactory;
volatile ReactiveExecutor reactiveExecutor;
volatile Registry registry;
volatile ManagementStrategy managementStrategy;
@@ -3288,7 +3287,6 @@ public abstract class AbstractCamelContext extends BaseService
typeConverter = null;
reactiveExecutor = null;
exchangeFactoryManager = null;
- processorExchangeFactory = null;
registry = null;
}
diff --git a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java
index 8212b1e7f94..49bec33d3d5 100644
--- a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java
+++ b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultCamelContextExtension.java
@@ -81,6 +81,7 @@ class DefaultCamelContextExtension implements ExtendedCamelContext {
private final PluginManager pluginManager = new DefaultContextPluginManager();
private volatile String description;
private volatile ExchangeFactory exchangeFactory;
+ private volatile ProcessorExchangeFactory processorExchangeFactory;
@Deprecated
private ErrorHandlerFactory errorHandlerFactory;
private String basePackageScan;
@@ -450,21 +451,21 @@ class DefaultCamelContextExtension implements ExtendedCamelContext {
@Override
public ProcessorExchangeFactory getProcessorExchangeFactory() {
- if (camelContext.processorExchangeFactory == null) {
- synchronized (camelContext.lock) {
- if (camelContext.processorExchangeFactory == null) {
+ if (processorExchangeFactory == null) {
+ synchronized (lock) {
+ if (processorExchangeFactory == null) {
setProcessorExchangeFactory(camelContext.createProcessorExchangeFactory());
}
}
}
- return camelContext.processorExchangeFactory;
+ return processorExchangeFactory;
}
@Override
public void setProcessorExchangeFactory(ProcessorExchangeFactory processorExchangeFactory) {
// automatic inject camel context
processorExchangeFactory.setCamelContext(camelContext);
- camelContext.processorExchangeFactory = processorExchangeFactory;
+ this.processorExchangeFactory = processorExchangeFactory;
}
@Override