This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 299845f4c65 CAMEL-18458: camel-core - Remove eager loading classes
299845f4c65 is described below

commit 299845f4c654b649a3c351cbbbd859a98c521a50
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Mon Sep 5 07:13:14 2022 +0200

    CAMEL-18458: camel-core - Remove eager loading classes
---
 .../camel/impl/engine/CamelInternalProcessor.java  |  7 ---
 .../camel/impl/engine/DefaultReactiveExecutor.java |  8 ---
 .../camel/impl/engine/DefaultUnitOfWork.java       |  6 ---
 .../java/org/apache/camel/processor/Pipeline.java  |  7 ---
 .../org/apache/camel/processor/PipelineHelper.java |  6 ---
 .../errorhandler/DefaultErrorHandler.java          |  7 ---
 .../MainConfigurationPropertiesConfigurer.java     |  6 ---
 .../camel-main-configuration-metadata.json         |  1 -
 core/camel-main/src/main/docs/main.adoc            |  3 +-
 .../org/apache/camel/main/BaseMainSupport.java     |  6 ---
 .../camel/main/DefaultConfigurationProperties.java | 24 ---------
 .../apache/camel/main/EagerClassloadedHelper.java  | 57 ----------------------
 .../org/apache/camel/support/ExchangeHelper.java   |  7 ---
 .../org/apache/camel/support/MessageHelper.java    |  7 ---
 .../org/apache/camel/support/UnitOfWorkHelper.java |  6 ---
 15 files changed, 1 insertion(+), 157 deletions(-)

diff --git 
a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/CamelInternalProcessor.java
 
b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/CamelInternalProcessor.java
index 868269ac0ab..8ae23a74a68 100644
--- 
a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/CamelInternalProcessor.java
+++ 
b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/CamelInternalProcessor.java
@@ -56,7 +56,6 @@ import org.apache.camel.spi.Tracer;
 import org.apache.camel.spi.Transformer;
 import org.apache.camel.spi.UnitOfWork;
 import org.apache.camel.spi.UnitOfWorkFactory;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.support.CamelContextHelper;
 import org.apache.camel.support.ExchangeHelper;
 import org.apache.camel.support.LoggerHelper;
@@ -98,7 +97,6 @@ import org.slf4j.LoggerFactory;
  * <p/>
  * The added advices can implement {@link Ordered} to control in which order 
the advices are executed.
  */
-@EagerClassloaded
 public class CamelInternalProcessor extends DelegateAsyncProcessor implements 
InternalProcessor {
 
     private static final Logger LOG = 
LoggerFactory.getLogger(CamelInternalProcessor.class);
@@ -135,11 +133,6 @@ public class CamelInternalProcessor extends 
DelegateAsyncProcessor implements In
         log.trace("Loaded {}", task.getClass().getSimpleName());
     }
 
-    public static void onClassloaded(Logger log) {
-        CamelInternalProcessor dummy = new CamelInternalProcessor(log);
-        log.trace("Loaded {}", dummy.getClass().getSimpleName());
-    }
-
     @Override
     protected void doBuild() throws Exception {
         boolean pooled = 
camelContext.adapt(ExtendedCamelContext.class).getExchangeFactory().isPooled();
diff --git 
a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultReactiveExecutor.java
 
b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultReactiveExecutor.java
index 47c468d54f9..2930c025095 100644
--- 
a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultReactiveExecutor.java
+++ 
b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultReactiveExecutor.java
@@ -25,7 +25,6 @@ import org.apache.camel.StaticService;
 import org.apache.camel.api.management.ManagedAttribute;
 import org.apache.camel.api.management.ManagedResource;
 import org.apache.camel.spi.ReactiveExecutor;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.support.service.ServiceSupport;
 import org.apache.camel.util.concurrent.NamedThreadLocal;
 import org.slf4j.Logger;
@@ -35,7 +34,6 @@ import org.slf4j.LoggerFactory;
  * Default {@link ReactiveExecutor}.
  */
 @ManagedResource(description = "Managed ReactiveExecutor")
-@EagerClassloaded
 public class DefaultReactiveExecutor extends ServiceSupport implements 
ReactiveExecutor, StaticService {
 
     private static final Logger LOG = 
LoggerFactory.getLogger(DefaultReactiveExecutor.class);
@@ -105,12 +103,6 @@ public class DefaultReactiveExecutor extends 
ServiceSupport implements ReactiveE
         return pendingTasks.intValue();
     }
 
-    public static void onClassloaded(Logger log) {
-        log.trace("Loaded DefaultReactiveExecutor");
-        Worker dummy = new Worker(-1, null);
-        log.trace("Loaded {}", dummy.getClass().getName());
-    }
-
     @Override
     protected void doStop() throws Exception {
         if (LOG.isDebugEnabled() && statisticsEnabled) {
diff --git 
a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultUnitOfWork.java
 
b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultUnitOfWork.java
index 9580c258a6f..09110b55a89 100644
--- 
a/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultUnitOfWork.java
+++ 
b/core/camel-base-engine/src/main/java/org/apache/camel/impl/engine/DefaultUnitOfWork.java
@@ -37,7 +37,6 @@ import org.apache.camel.spi.InflightRepository;
 import org.apache.camel.spi.Synchronization;
 import org.apache.camel.spi.SynchronizationVetoable;
 import org.apache.camel.spi.UnitOfWork;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.support.DefaultMessage;
 import org.apache.camel.support.EventHelper;
 import org.apache.camel.support.MessageSupport;
@@ -48,7 +47,6 @@ import org.slf4j.LoggerFactory;
 /**
  * The default implementation of {@link org.apache.camel.spi.UnitOfWork}
  */
-@EagerClassloaded
 public class DefaultUnitOfWork implements UnitOfWork {
     private static final Logger LOG = 
LoggerFactory.getLogger(DefaultUnitOfWork.class);
 
@@ -86,10 +84,6 @@ public class DefaultUnitOfWork implements UnitOfWork {
         doOnPrepare(exchange);
     }
 
-    public static void onClassloaded(Logger log) {
-        log.trace("Loaded DefaultUnitOfWork");
-    }
-
     UnitOfWork newInstance(Exchange exchange) {
         return new DefaultUnitOfWork(exchange, inflightRepository, 
allowUseOriginalMessage, useBreadcrumb);
     }
diff --git 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java
 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java
index 8ab25fa015b..48ac38e1ec5 100644
--- 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java
+++ 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java
@@ -32,7 +32,6 @@ import org.apache.camel.Traceable;
 import org.apache.camel.spi.IdAware;
 import org.apache.camel.spi.ReactiveExecutor;
 import org.apache.camel.spi.RouteIdAware;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.support.AsyncProcessorConverterHelper;
 import org.apache.camel.support.AsyncProcessorSupport;
 import org.apache.camel.support.ExchangeHelper;
@@ -46,7 +45,6 @@ import static 
org.apache.camel.processor.PipelineHelper.continueProcessing;
  * Creates a Pipeline pattern where the output of the previous step is sent as 
input to the next step, reusing the same
  * message exchanges
  */
-@EagerClassloaded
 public class Pipeline extends AsyncProcessorSupport implements 
Navigate<Processor>, Traceable, IdAware, RouteIdAware {
 
     private static final Logger LOG = LoggerFactory.getLogger(Pipeline.class);
@@ -139,11 +137,6 @@ public class Pipeline extends AsyncProcessorSupport 
implements Navigate<Processo
         log.trace("Loaded {}", task.getClass().getSimpleName());
     }
 
-    public static void onClassloaded(Logger log) {
-        Pipeline dummy = new Pipeline(log);
-        log.trace("Loaded {}", dummy.getClass().getSimpleName());
-    }
-
     public static Processor newInstance(CamelContext camelContext, 
List<Processor> processors) {
         if (processors.isEmpty()) {
             return null;
diff --git 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/PipelineHelper.java
 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/PipelineHelper.java
index 41eea8d7c1f..4e96f8c3ffb 100644
--- 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/PipelineHelper.java
+++ 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/PipelineHelper.java
@@ -18,23 +18,17 @@ package org.apache.camel.processor;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.ExtendedExchange;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.slf4j.Logger;
 
 /**
  * Helper for processing {@link org.apache.camel.Exchange} in a
  * <a href="http://camel.apache.org/pipes-and-filters.html";>pipeline</a>.
  */
-@EagerClassloaded
 public final class PipelineHelper {
 
     private PipelineHelper() {
     }
 
-    public static void onClassloaded(Logger log) {
-        log.trace("Loaded PipelineHelper");
-    }
-
     /**
      * Should we continue processing the exchange?
      *
diff --git 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/DefaultErrorHandler.java
 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/DefaultErrorHandler.java
index 0046fd769d9..2bd326b4074 100644
--- 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/DefaultErrorHandler.java
+++ 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/DefaultErrorHandler.java
@@ -24,14 +24,12 @@ import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
 import org.apache.camel.spi.CamelLogger;
 import org.apache.camel.spi.ErrorHandler;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
  * Default error handler
  */
-@EagerClassloaded
 public class DefaultErrorHandler extends RedeliveryErrorHandler {
 
     private static final CamelLogger DEFAULT_LOGGER
@@ -73,11 +71,6 @@ public class DefaultErrorHandler extends 
RedeliveryErrorHandler {
         log.trace("Loaded {}", dummy2.getClass().getName());
     }
 
-    public static void onClassloaded(Logger log) {
-        DefaultErrorHandler dummy = new DefaultErrorHandler(log);
-        log.trace("Loaded {}", dummy.getClass().getName());
-    }
-
     @Override
     public ErrorHandler clone(Processor output) {
         DefaultErrorHandler answer = new DefaultErrorHandler(
diff --git 
a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
 
b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
index 89915f79657..fd3953a833b 100644
--- 
a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
+++ 
b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
@@ -79,8 +79,6 @@ public class MainConfigurationPropertiesConfigurer extends 
org.apache.camel.supp
         case "DurationMaxMessages": 
target.setDurationMaxMessages(property(camelContext, int.class, value)); return 
true;
         case "durationmaxseconds":
         case "DurationMaxSeconds": 
target.setDurationMaxSeconds(property(camelContext, int.class, value)); return 
true;
-        case "eagerclassloading":
-        case "EagerClassloading": 
target.setEagerClassloading(property(camelContext, boolean.class, value)); 
return true;
         case "endpointbridgeerrorhandler":
         case "EndpointBridgeErrorHandler": 
target.setEndpointBridgeErrorHandler(property(camelContext, boolean.class, 
value)); return true;
         case "endpointlazystartproducer":
@@ -322,8 +320,6 @@ public class MainConfigurationPropertiesConfigurer extends 
org.apache.camel.supp
         case "DurationMaxMessages": return int.class;
         case "durationmaxseconds":
         case "DurationMaxSeconds": return int.class;
-        case "eagerclassloading":
-        case "EagerClassloading": return boolean.class;
         case "endpointbridgeerrorhandler":
         case "EndpointBridgeErrorHandler": return boolean.class;
         case "endpointlazystartproducer":
@@ -566,8 +562,6 @@ public class MainConfigurationPropertiesConfigurer extends 
org.apache.camel.supp
         case "DurationMaxMessages": return target.getDurationMaxMessages();
         case "durationmaxseconds":
         case "DurationMaxSeconds": return target.getDurationMaxSeconds();
-        case "eagerclassloading":
-        case "EagerClassloading": return target.isEagerClassloading();
         case "endpointbridgeerrorhandler":
         case "EndpointBridgeErrorHandler": return 
target.isEndpointBridgeErrorHandler();
         case "endpointlazystartproducer":
diff --git 
a/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
 
b/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
index 9db2dad98d5..4356af10528 100644
--- 
a/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
+++ 
b/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
@@ -41,7 +41,6 @@
     { "name": "camel.main.durationMaxIdleSeconds", "description": "To specify 
for how long time in seconds Camel can be idle before automatic terminating the 
JVM. You can use this to run Camel for a short while.", "sourceType": 
"org.apache.camel.main.DefaultConfigurationProperties", "type": "integer", 
"javaType": "int" },
     { "name": "camel.main.durationMaxMessages", "description": "To specify how 
many messages to process by Camel before automatic terminating the JVM. You can 
use this to run Camel for a short while.", "sourceType": 
"org.apache.camel.main.DefaultConfigurationProperties", "type": "integer", 
"javaType": "int" },
     { "name": "camel.main.durationMaxSeconds", "description": "To specify for 
how long time in seconds to keep running the JVM before automatic terminating 
the JVM. You can use this to run Camel for a short while.", "sourceType": 
"org.apache.camel.main.DefaultConfigurationProperties", "type": "integer", 
"javaType": "int" },
-    { "name": "camel.main.eagerClassloading", "description": "Whether to eager 
load a common set of Camel classes that would otherwise first be loaded on 
processing the first message. By eager loading these classes then the JVM has 
already loaded the classes during build phase, which allows Camel to process 
the first message faster.", "sourceType": 
"org.apache.camel.main.DefaultConfigurationProperties", "type": "boolean", 
"javaType": "boolean", "defaultValue": "false" },
     { "name": "camel.main.endpointBridgeErrorHandler", "description": "Allows 
for bridging the consumer to the Camel routing Error Handler, which mean any 
exceptions occurred while the consumer is trying to pickup incoming messages, 
or the likes, will now be processed as a message and handled by the routing 
Error Handler. By default the consumer will use the 
org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be 
logged at WARN\/ERROR level and ignored. The default va [...]
     { "name": "camel.main.endpointLazyStartProducer", "description": "Whether 
the producer should be started lazy (on the first message). By starting lazy 
you can use this to allow CamelContext and routes to startup in situations 
where a producer may otherwise fail during starting and cause the route to fail 
being started. By deferring this startup to be lazy then the startup failure 
can be handled during routing messages via Camel's routing error handlers. 
Beware that when the first mes [...]
     { "name": "camel.main.endpointRuntimeStatisticsEnabled", "description": 
"Sets whether endpoint runtime statistics is enabled (gathers runtime usage of 
each incoming and outgoing endpoints). The default value is false.", 
"sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": 
"boolean", "javaType": "boolean", "defaultValue": "false" },
diff --git a/core/camel-main/src/main/docs/main.adoc 
b/core/camel-main/src/main/docs/main.adoc
index eaa175aebfd..389c7e7517b 100644
--- a/core/camel-main/src/main/docs/main.adoc
+++ b/core/camel-main/src/main/docs/main.adoc
@@ -18,7 +18,7 @@ The following tables lists all the options:
 
 // main options: START
 === Camel Main configurations
-The camel.main supports 118 options, which are listed below.
+The camel.main supports 117 options, which are listed below.
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
@@ -52,7 +52,6 @@ The camel.main supports 118 options, which are listed below.
 | *camel.main.durationMaxIdle{zwsp}Seconds* | To specify for how long time in 
seconds Camel can be idle before automatic terminating the JVM. You can use 
this to run Camel for a short while. |  | int
 | *camel.main.durationMaxMessages* | To specify how many messages to process 
by Camel before automatic terminating the JVM. You can use this to run Camel 
for a short while. |  | int
 | *camel.main.durationMaxSeconds* | To specify for how long time in seconds to 
keep running the JVM before automatic terminating the JVM. You can use this to 
run Camel for a short while. |  | int
-| *camel.main.eagerClassloading* | Whether to eager load a common set of Camel 
classes that would otherwise first be loaded on processing the first message. 
By eager loading these classes then the JVM has already loaded the classes 
during build phase, which allows Camel to process the first message faster. | 
false | boolean
 | *camel.main.endpointBridgeError{zwsp}Handler* | Allows for bridging the 
consumer to the Camel routing Error Handler, which mean any exceptions occurred 
while the consumer is trying to pickup incoming messages, or the likes, will 
now be processed as a message and handled by the routing Error Handler. By 
default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal 
with exceptions, that will be logged at WARN/ERROR level and ignored. The 
default value is false. | false  [...]
 | *camel.main.endpointLazyStart{zwsp}Producer* | Whether the producer should 
be started lazy (on the first message). By starting lazy you can use this to 
allow CamelContext and routes to startup in situations where a producer may 
otherwise fail during starting and cause the route to fail being started. By 
deferring this startup to be lazy then the startup failure can be handled 
during routing messages via Camel's routing error handlers. Beware that when 
the first message is processed the [...]
 | *camel.main.endpointRuntime{zwsp}StatisticsEnabled* | Sets whether endpoint 
runtime statistics is enabled (gathers runtime usage of each incoming and 
outgoing endpoints). The default value is false. | false | boolean
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java 
b/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
index 81a387a454c..650e39b9758 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
@@ -624,12 +624,6 @@ public abstract class BaseMainSupport extends BaseService {
             recorder.endStep(step);
         }
 
-        if (mainConfigurationProperties.isEagerClassloading()) {
-            step = recorder.beginStep(BaseMainSupport.class, "classloading", 
"Eager Classloading");
-            EagerClassloadedHelper.eagerLoadClasses();
-            recorder.endStep(step);
-        }
-
         configureLifecycle(camelContext);
 
         if (standalone) {
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
index a5a0117c96c..cebac3929ae 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
@@ -120,7 +120,6 @@ public abstract class DefaultConfigurationProperties<T> {
     @Metadata(defaultValue = "true")
     private boolean routesReloadRestartDuration = true;
     private boolean lightweight;
-    private boolean eagerClassloading;
     @Metadata(defaultValue = "default", enums = "default,prototype,pooled")
     private String exchangeFactory = "default";
     private int exchangeFactoryCapacity = 100;
@@ -1249,19 +1248,6 @@ public abstract class DefaultConfigurationProperties<T> {
         this.lightweight = lightweight;
     }
 
-    public boolean isEagerClassloading() {
-        return eagerClassloading;
-    }
-
-    /**
-     * Whether to eager load a common set of Camel classes that would 
otherwise first be loaded on processing the first
-     * message. By eager loading these classes then the JVM has already loaded 
the classes during build phase, which
-     * allows Camel to process the first message faster.
-     */
-    public void setEagerClassloading(boolean eagerClassloading) {
-        this.eagerClassloading = eagerClassloading;
-    }
-
     public String getExchangeFactory() {
         return exchangeFactory;
     }
@@ -2423,16 +2409,6 @@ public abstract class DefaultConfigurationProperties<T> {
         return (T) this;
     }
 
-    /**
-     * Whether to eager load a common set of Camel classes that would 
otherwise first be loaded on processing the first
-     * message. By eager loading these classes then the JVM has already loaded 
the classes during build phase, which
-     * allows Camel to process the first message faster.
-     */
-    public T withEagerClassloading(boolean eagerClassloading) {
-        this.eagerClassloading = eagerClassloading;
-        return (T) this;
-    }
-
     /**
      * Controls whether to pool (reuse) exchanges or create new fresh 
exchanges (default). Using pooled will reduce JVM
      * garbage collection overhead by avoiding to re-create Exchange instances 
per message each consumer receives.
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/EagerClassloadedHelper.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/EagerClassloadedHelper.java
deleted file mode 100644
index 1b48193f915..00000000000
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/EagerClassloadedHelper.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.main;
-
-import org.apache.camel.util.StopWatch;
-import org.apache.camel.util.TimeUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * To eager load a set of classes that Camel always uses.
- *
- * This is for optimization purposes to ensure the classes are loaded before 
Camel is started and would load the classes
- * while processing the first messages.
- */
-public final class EagerClassloadedHelper {
-
-    public static final Logger LOG = 
LoggerFactory.getLogger(EagerClassloadedHelper.class);
-
-    private EagerClassloadedHelper() {
-    }
-
-    public static void eagerLoadClasses() {
-        StopWatch watch = new StopWatch();
-
-        int count = 0;
-        // EAGER-CLASSLOADED: START
-        count = 9;
-        org.apache.camel.impl.engine.CamelInternalProcessor.onClassloaded(LOG);
-        
org.apache.camel.impl.engine.DefaultReactiveExecutor.onClassloaded(LOG);
-        org.apache.camel.impl.engine.DefaultUnitOfWork.onClassloaded(LOG);
-        org.apache.camel.processor.Pipeline.onClassloaded(LOG);
-        org.apache.camel.processor.PipelineHelper.onClassloaded(LOG);
-        
org.apache.camel.processor.errorhandler.DefaultErrorHandler.onClassloaded(LOG);
-        org.apache.camel.support.ExchangeHelper.onClassloaded(LOG);
-        org.apache.camel.support.MessageHelper.onClassloaded(LOG);
-        org.apache.camel.support.UnitOfWorkHelper.onClassloaded(LOG);
-        // EAGER-CLASSLOADED: END
-
-        String time = TimeUtils.printDuration(watch.taken(), true);
-        LOG.debug("Eager loaded {} classes in {}", count, time);
-    }
-}
diff --git 
a/core/camel-support/src/main/java/org/apache/camel/support/ExchangeHelper.java 
b/core/camel-support/src/main/java/org/apache/camel/support/ExchangeHelper.java
index 1f93bbac561..de09fa7238f 100644
--- 
a/core/camel-support/src/main/java/org/apache/camel/support/ExchangeHelper.java
+++ 
b/core/camel-support/src/main/java/org/apache/camel/support/ExchangeHelper.java
@@ -51,17 +51,14 @@ import org.apache.camel.TypeConversionException;
 import org.apache.camel.WrappedFile;
 import org.apache.camel.spi.NormalizedEndpointUri;
 import org.apache.camel.spi.UnitOfWork;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.util.IOHelper;
 import org.apache.camel.util.ObjectHelper;
 import org.apache.camel.util.Scanner;
 import org.apache.camel.util.StringHelper;
-import org.slf4j.Logger;
 
 /**
  * Some helper methods for working with {@link Exchange} objects
  */
-@EagerClassloaded
 public final class ExchangeHelper {
 
     private static String defaultCharsetName = 
ObjectHelper.getSystemProperty(Exchange.DEFAULT_CHARSET_PROPERTY, "UTF-8");
@@ -73,10 +70,6 @@ public final class ExchangeHelper {
     private ExchangeHelper() {
     }
 
-    public static void onClassloaded(Logger log) {
-        log.trace("Loaded ExchangeHelper");
-    }
-
     /**
      * Extracts the Exchange.BINDING of the given type or null if not present
      *
diff --git 
a/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java 
b/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
index 4d24c6699e3..bba3e842fdc 100644
--- 
a/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
+++ 
b/core/camel-support/src/main/java/org/apache/camel/support/MessageHelper.java
@@ -37,17 +37,14 @@ import org.apache.camel.WrappedFile;
 import org.apache.camel.spi.DataTypeAware;
 import org.apache.camel.spi.ExchangeFormatter;
 import org.apache.camel.spi.HeaderFilterStrategy;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.util.ObjectHelper;
 import org.apache.camel.util.StopWatch;
 import org.apache.camel.util.StringHelper;
 import org.apache.camel.util.URISupport;
-import org.slf4j.Logger;
 
 /**
  * Some helper methods when working with {@link org.apache.camel.Message}.
  */
-@EagerClassloaded
 public final class MessageHelper {
 
     private static final String MESSAGE_HISTORY_HEADER = "%-40s %-30s %-50s 
%-12s";
@@ -59,10 +56,6 @@ public final class MessageHelper {
     private MessageHelper() {
     }
 
-    public static void onClassloaded(Logger log) {
-        log.trace("Loaded MessageHelper");
-    }
-
     /**
      * Extracts the given body and returns it as a String, that can be used 
for logging etc.
      * <p/>
diff --git 
a/core/camel-support/src/main/java/org/apache/camel/support/UnitOfWorkHelper.java
 
b/core/camel-support/src/main/java/org/apache/camel/support/UnitOfWorkHelper.java
index 7e61ddf1a6b..5ef53488a89 100644
--- 
a/core/camel-support/src/main/java/org/apache/camel/support/UnitOfWorkHelper.java
+++ 
b/core/camel-support/src/main/java/org/apache/camel/support/UnitOfWorkHelper.java
@@ -26,7 +26,6 @@ import org.apache.camel.Service;
 import org.apache.camel.spi.Synchronization;
 import org.apache.camel.spi.SynchronizationRouteAware;
 import org.apache.camel.spi.UnitOfWork;
-import org.apache.camel.spi.annotations.EagerClassloaded;
 import org.apache.camel.support.service.ServiceHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -34,7 +33,6 @@ import org.slf4j.LoggerFactory;
 /**
  * Utility methods for {@link org.apache.camel.spi.UnitOfWork}
  */
-@EagerClassloaded
 public final class UnitOfWorkHelper {
 
     private static final Logger LOG = 
LoggerFactory.getLogger(UnitOfWorkHelper.class);
@@ -42,10 +40,6 @@ public final class UnitOfWorkHelper {
     private UnitOfWorkHelper() {
     }
 
-    public static void onClassloaded(Logger log) {
-        log.trace("Loaded UnitOfWorkHelper");
-    }
-
     /**
      * Done and stop the {@link UnitOfWork}.
      *

Reply via email to