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 2020/11/05 14:46:06 UTC
[camel] branch master updated: camel-core - In lightweight mode
then throw exception if access to model is called.
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new 86df066 camel-core - In lightweight mode then throw exception if access to model is called.
86df066 is described below
commit 86df0663038b000d7b7fd07a00dc3055d60e5559
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Nov 5 15:45:31 2020 +0100
camel-core - In lightweight mode then throw exception if access to model is called.
---
.../org/apache/camel/impl/DefaultCamelContext.java | 347 +++++++++++----------
1 file changed, 177 insertions(+), 170 deletions(-)
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index d244b12..589df12 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -17,7 +17,6 @@
package org.apache.camel.impl;
import java.util.Collection;
-import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Properties;
@@ -118,377 +117,387 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
@Override
public void addModelLifecycleStrategy(ModelLifecycleStrategy modelLifecycleStrategy) {
- if (model != null) {
- model.addModelLifecycleStrategy(modelLifecycleStrategy);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addModelLifecycleStrategy(modelLifecycleStrategy);
}
@Override
public List<ModelLifecycleStrategy> getModelLifecycleStrategies() {
- if (model != null) {
- return model.getModelLifecycleStrategies();
- } else {
- return Collections.EMPTY_LIST;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getModelLifecycleStrategies();
}
@Override
public List<RouteDefinition> getRouteDefinitions() {
- if (model != null) {
- return model.getRouteDefinitions();
- } else {
- return Collections.EMPTY_LIST;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getRouteDefinitions();
}
@Override
public RouteDefinition getRouteDefinition(String id) {
- if (model != null) {
- return model.getRouteDefinition(id);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getRouteDefinition(id);
}
@Override
public void addRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception {
- if (model != null) {
- model.addRouteDefinitions(routeDefinitions);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addRouteDefinitions(routeDefinitions);
}
@Override
public void addRouteDefinition(RouteDefinition routeDefinition) throws Exception {
- if (model != null) {
- model.addRouteDefinition(routeDefinition);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addRouteDefinition(routeDefinition);
}
@Override
public void removeRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception {
- if (model != null) {
- model.removeRouteDefinitions(routeDefinitions);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.removeRouteDefinitions(routeDefinitions);
}
@Override
public void removeRouteDefinition(RouteDefinition routeDefinition) throws Exception {
- if (model != null) {
- model.removeRouteDefinition(routeDefinition);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.removeRouteDefinition(routeDefinition);
}
@Override
public List<RouteTemplateDefinition> getRouteTemplateDefinitions() {
- if (model != null) {
- return model.getRouteTemplateDefinitions();
- } else {
- return Collections.EMPTY_LIST;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getRouteTemplateDefinitions();
}
@Override
public RouteTemplateDefinition getRouteTemplateDefinition(String id) {
- if (model != null) {
- return model.getRouteTemplateDefinition(id);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getRouteTemplateDefinition(id);
}
@Override
public void addRouteTemplateDefinitions(Collection<RouteTemplateDefinition> routeTemplateDefinitions) throws Exception {
- if (model != null) {
- model.addRouteTemplateDefinitions(routeTemplateDefinitions);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addRouteTemplateDefinitions(routeTemplateDefinitions);
}
@Override
public void addRouteTemplateDefinition(RouteTemplateDefinition routeTemplateDefinition) throws Exception {
- if (model != null) {
- model.addRouteTemplateDefinition(routeTemplateDefinition);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addRouteTemplateDefinition(routeTemplateDefinition);
}
@Override
public void removeRouteTemplateDefinitions(Collection<RouteTemplateDefinition> routeTemplateDefinitions) throws Exception {
- if (model != null) {
- model.removeRouteTemplateDefinitions(routeTemplateDefinitions);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.removeRouteTemplateDefinitions(routeTemplateDefinitions);
}
@Override
public void removeRouteTemplateDefinition(RouteTemplateDefinition routeTemplateDefinition) throws Exception {
- if (model != null) {
- model.removeRouteTemplateDefinition(routeTemplateDefinition);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.removeRouteTemplateDefinition(routeTemplateDefinition);
}
@Override
public void addRouteTemplateDefinitionConverter(String templateIdPattern, RouteTemplateDefinition.Converter converter) {
- if (model != null) {
- model.addRouteTemplateDefinitionConverter(templateIdPattern, converter);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addRouteTemplateDefinitionConverter(templateIdPattern, converter);
}
@Override
public String addRouteFromTemplate(String routeId, String routeTemplateId, Map<String, Object> parameters)
throws Exception {
- if (model != null) {
- return model.addRouteFromTemplate(routeId, routeTemplateId, parameters);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.addRouteFromTemplate(routeId, routeTemplateId, parameters);
}
@Override
public List<RestDefinition> getRestDefinitions() {
- if (model != null) {
- return model.getRestDefinitions();
- } else {
- return Collections.EMPTY_LIST;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getRestDefinitions();
}
@Override
public void addRestDefinitions(Collection<RestDefinition> restDefinitions, boolean addToRoutes) throws Exception {
- if (model != null) {
- model.addRestDefinitions(restDefinitions, addToRoutes);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addRestDefinitions(restDefinitions, addToRoutes);
}
@Override
public void setDataFormats(Map<String, DataFormatDefinition> dataFormats) {
- if (model != null) {
- model.setDataFormats(dataFormats);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setDataFormats(dataFormats);
}
@Override
public Map<String, DataFormatDefinition> getDataFormats() {
- if (model != null) {
- return model.getDataFormats();
- } else {
- return Collections.EMPTY_MAP;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getDataFormats();
}
@Override
public DataFormatDefinition resolveDataFormatDefinition(String name) {
- if (model != null) {
- return model.resolveDataFormatDefinition(name);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.resolveDataFormatDefinition(name);
}
@Override
public ProcessorDefinition<?> getProcessorDefinition(String id) {
- if (model != null) {
- return model.getProcessorDefinition(id);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getProcessorDefinition(id);
}
@Override
public <T extends ProcessorDefinition<T>> T getProcessorDefinition(String id, Class<T> type) {
- if (model != null) {
- return model.getProcessorDefinition(id, type);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getProcessorDefinition(id, type);
}
@Override
public void setValidators(List<ValidatorDefinition> validators) {
- if (model != null) {
- model.setValidators(validators);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setValidators(validators);
}
@Override
public HystrixConfigurationDefinition getHystrixConfiguration(String id) {
- if (model != null) {
- return model.getHystrixConfiguration(id);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getHystrixConfiguration(id);
}
@Override
public void setHystrixConfiguration(HystrixConfigurationDefinition configuration) {
- if (model != null) {
- model.setHystrixConfiguration(configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setHystrixConfiguration(configuration);
}
@Override
public void setHystrixConfigurations(List<HystrixConfigurationDefinition> configurations) {
- if (model != null) {
- model.setHystrixConfigurations(configurations);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setHystrixConfigurations(configurations);
}
@Override
public void addHystrixConfiguration(String id, HystrixConfigurationDefinition configuration) {
- if (model != null) {
- model.addHystrixConfiguration(id, configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addHystrixConfiguration(id, configuration);
}
@Override
public Resilience4jConfigurationDefinition getResilience4jConfiguration(String id) {
- if (model != null) {
- return model.getResilience4jConfiguration(id);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getResilience4jConfiguration(id);
}
@Override
public void setResilience4jConfiguration(Resilience4jConfigurationDefinition configuration) {
- if (model != null) {
- model.setResilience4jConfiguration(configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setResilience4jConfiguration(configuration);
}
@Override
public void setResilience4jConfigurations(List<Resilience4jConfigurationDefinition> configurations) {
- if (model != null) {
- model.setResilience4jConfigurations(configurations);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setResilience4jConfigurations(configurations);
}
@Override
public void addResilience4jConfiguration(String id, Resilience4jConfigurationDefinition configuration) {
- if (model != null) {
- model.addResilience4jConfiguration(id, configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addResilience4jConfiguration(id, configuration);
}
@Override
public FaultToleranceConfigurationDefinition getFaultToleranceConfiguration(String id) {
- if (model != null) {
- return model.getFaultToleranceConfiguration(id);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getFaultToleranceConfiguration(id);
}
@Override
public void setFaultToleranceConfiguration(FaultToleranceConfigurationDefinition configuration) {
- if (model != null) {
- model.setFaultToleranceConfiguration(configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setFaultToleranceConfiguration(configuration);
}
@Override
public void setFaultToleranceConfigurations(List<FaultToleranceConfigurationDefinition> configurations) {
- if (model != null) {
- model.setFaultToleranceConfigurations(configurations);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setFaultToleranceConfigurations(configurations);
}
@Override
public void addFaultToleranceConfiguration(String id, FaultToleranceConfigurationDefinition configuration) {
- if (model != null) {
- model.addFaultToleranceConfiguration(id, configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addFaultToleranceConfiguration(id, configuration);
}
@Override
public List<ValidatorDefinition> getValidators() {
- if (model != null) {
- return model.getValidators();
- } else {
- return Collections.EMPTY_LIST;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getValidators();
}
@Override
public void setTransformers(List<TransformerDefinition> transformers) {
- if (model != null) {
- model.setTransformers(transformers);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setTransformers(transformers);
}
@Override
public List<TransformerDefinition> getTransformers() {
- if (model != null) {
- return model.getTransformers();
- } else {
- return Collections.EMPTY_LIST;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getTransformers();
}
@Override
public ServiceCallConfigurationDefinition getServiceCallConfiguration(String serviceName) {
- if (model != null) {
- return model.getServiceCallConfiguration(serviceName);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getServiceCallConfiguration(serviceName);
}
@Override
public void setServiceCallConfiguration(ServiceCallConfigurationDefinition configuration) {
- if (model != null) {
- model.setServiceCallConfiguration(configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setServiceCallConfiguration(configuration);
}
@Override
public void setServiceCallConfigurations(List<ServiceCallConfigurationDefinition> configurations) {
- if (model != null) {
- model.setServiceCallConfigurations(configurations);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setServiceCallConfigurations(configurations);
}
@Override
public void addServiceCallConfiguration(String serviceName, ServiceCallConfigurationDefinition configuration) {
- if (model != null) {
- model.addServiceCallConfiguration(serviceName, configuration);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.addServiceCallConfiguration(serviceName, configuration);
}
@Override
public void setRouteFilterPattern(String include, String exclude) {
- if (model != null) {
- model.setRouteFilterPattern(include, exclude);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setRouteFilterPattern(include, exclude);
}
@Override
public void setRouteFilter(Function<RouteDefinition, Boolean> filter) {
- if (model != null) {
- model.setRouteFilter(filter);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setRouteFilter(filter);
}
@Override
public Function<RouteDefinition, Boolean> getRouteFilter() {
- if (model != null) {
- return model.getRouteFilter();
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getRouteFilter();
}
@Override
public ModelReifierFactory getModelReifierFactory() {
- if (model != null) {
- return model.getModelReifierFactory();
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getModelReifierFactory();
}
@Override
public void setModelReifierFactory(ModelReifierFactory modelReifierFactory) {
- if (model != null) {
- model.setModelReifierFactory(modelReifierFactory);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.setModelReifierFactory(modelReifierFactory);
}
@Override
@@ -526,14 +535,12 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
@Override
protected boolean isStreamCachingInUse() throws Exception {
boolean streamCachingInUse = super.isStreamCachingInUse();
- if (model != null) {
- if (!streamCachingInUse) {
- for (RouteDefinition route : model.getRouteDefinitions()) {
- Boolean routeCache = CamelContextHelper.parseBoolean(this, route.getStreamCache());
- if (routeCache != null && routeCache) {
- streamCachingInUse = true;
- break;
- }
+ if (!streamCachingInUse) {
+ for (RouteDefinition route : model.getRouteDefinitions()) {
+ Boolean routeCache = CamelContextHelper.parseBoolean(this, route.getStreamCache());
+ if (routeCache != null && routeCache) {
+ streamCachingInUse = true;
+ break;
}
}
}
@@ -542,17 +549,18 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
@Override
public void startRouteDefinitions() throws Exception {
- if (model != null) {
- List<RouteDefinition> routeDefinitions = model.getRouteDefinitions();
- if (routeDefinitions != null) {
- startRouteDefinitions(routeDefinitions);
- }
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
+ }
+ List<RouteDefinition> routeDefinitions = model.getRouteDefinitions();
+ if (routeDefinitions != null) {
+ startRouteDefinitions(routeDefinitions);
}
}
public void startRouteDefinitions(List<RouteDefinition> routeDefinitions) throws Exception {
- if (model == null) {
- return;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
// indicate we are staring the route using this thread so
@@ -610,29 +618,26 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
@Override
public Processor createErrorHandler(Route route, Processor processor) throws Exception {
- if (model != null) {
- return model.getModelReifierFactory().createErrorHandler(route, processor);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getModelReifierFactory().createErrorHandler(route, processor);
}
@Override
public Expression createExpression(ExpressionDefinition definition) {
- if (model != null) {
- return model.getModelReifierFactory().createExpression(this, definition);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getModelReifierFactory().createExpression(this, definition);
}
@Override
public Predicate createPredicate(ExpressionDefinition definition) {
- if (model != null) {
- return model.getModelReifierFactory().createPredicate(this, definition);
- } else {
- return null;
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ return model.getModelReifierFactory().createPredicate(this, definition);
}
@Override
@@ -642,11 +647,12 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
@Override
public void registerValidator(ValidatorDefinition def) {
- if (model != null) {
- model.getValidators().add(def);
- Validator validator = model.getModelReifierFactory().createValidator(this, def);
- getValidatorRegistry().put(createValidatorKey(def), validator);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.getValidators().add(def);
+ Validator validator = model.getModelReifierFactory().createValidator(this, def);
+ getValidatorRegistry().put(createValidatorKey(def), validator);
}
private static ValueHolder<String> createValidatorKey(ValidatorDefinition def) {
@@ -655,11 +661,12 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
@Override
public void registerTransformer(TransformerDefinition def) {
- if (model != null) {
- model.getTransformers().add(def);
- Transformer transformer = model.getModelReifierFactory().createTransformer(this, def);
- getTransformerRegistry().put(createTransformerKey(def), transformer);
+ if (model == null && isLightweight()) {
+ throw new IllegalStateException("Access to model not supported in lightweight mode");
}
+ model.getTransformers().add(def);
+ Transformer transformer = model.getModelReifierFactory().createTransformer(this, def);
+ getTransformerRegistry().put(createTransformerKey(def), transformer);
}
private static ValueHolder<String> createTransformerKey(TransformerDefinition def) {