public class DefaultCamelBeanPostProcessor extends Object implements org.apache.camel.spi.CamelBeanPostProcessor
Endpoint and ProducerTemplate
 together with support for POJO Consuming via the
 Consume annotation along with POJO
 Producing via the Produce annotation along with other annotations such as
 DynamicRouter for creating a
 Dynamic router via annotations. RecipientList for creating
 a Recipient List router via annotations.
 RoutingSlip for creating a
 Routing Slip router via annotations.
 
 Components such as camel-spring, and camel-blueprint can leverage this post processor to hook in
 Camel bean post processing into their bean processing framework.| Modifier and Type | Field and Description | 
|---|---|
| protected org.apache.camel.CamelContext | camelContext | 
| protected CamelPostProcessorHelper | camelPostProcessorHelper | 
| protected boolean | enabled | 
| protected static org.slf4j.Logger | LOG | 
| Constructor and Description | 
|---|
| DefaultCamelBeanPostProcessor() | 
| DefaultCamelBeanPostProcessor(org.apache.camel.CamelContext camelContext) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected boolean | bindToRegistrySupported()Whether support for the annotation  BindToRegistryis supported. | 
| protected boolean | canPostProcessBean(Object bean,
                  String beanName) | 
| protected boolean | canSetCamelContext(Object bean,
                  String beanName) | 
| org.apache.camel.CamelContext | getOrLookupCamelContext()Strategy to get the  CamelContextto use. | 
| CamelPostProcessorHelper | getPostProcessorHelper()Strategy to get the  CamelPostProcessorHelper | 
| protected void | injectBindToRegistryFields(Object bean,
                          String beanName,
                          Function<Class,Boolean> accept) | 
| protected void | injectBindToRegistryMethods(Object bean,
                           String beanName,
                           Function<Class,Boolean> accept) | 
| protected void | injectClass(Object bean,
           String beanName) | 
| void | injectField(Field field,
           String endpointUri,
           String endpointProperty,
           Object bean,
           String beanName) | 
| void | injectField(Field field,
           String endpointUri,
           String endpointProperty,
           Object bean,
           String beanName,
           boolean binding) | 
| void | injectFieldBean(Field field,
               String name,
               Object bean,
               String beanName) | 
| void | injectFieldBeanConfig(Field field,
                     String name,
                     Object bean,
                     String beanName) | 
| void | injectFieldProperty(Field field,
                   String propertyName,
                   String propertyDefaultValue,
                   Object bean,
                   String beanName) | 
| protected void | injectFields(Object bean,
            String beanName,
            Function<Class,Boolean> accept) | 
| protected void | injectFirstPass(Object bean,
               String beanName,
               Function<Class,Boolean> filter) | 
| protected void | injectMethods(Object bean,
             String beanName,
             Function<Class,Boolean> accept) | 
| protected void | injectNestedClasses(Object bean,
                   String beanName) | 
| protected void | injectSecondPass(Object bean,
                String beanName,
                Function<Class,Boolean> filter) | 
| boolean | isEnabled() | 
| Object | postProcessAfterInitialization(Object bean,
                              String beanName) | 
| Object | postProcessBeforeInitialization(Object bean,
                               String beanName) | 
| void | setEnabled(boolean enabled) | 
| void | setterBeanConfigInjection(Method method,
                         String name,
                         Object bean,
                         String beanName) | 
| void | setterBeanInjection(Method method,
                   String name,
                   Object bean,
                   String beanName) | 
| protected void | setterInjection(Method method,
               Object bean,
               String beanName) | 
| void | setterInjection(Method method,
               Object bean,
               String beanName,
               String endpointUri,
               String endpointProperty) | 
| void | setterPropertyInjection(Method method,
                       String propertyValue,
                       String propertyDefaultValue,
                       Object bean,
                       String beanName) | 
protected static final org.slf4j.Logger LOG
protected CamelPostProcessorHelper camelPostProcessorHelper
protected org.apache.camel.CamelContext camelContext
protected boolean enabled
public DefaultCamelBeanPostProcessor()
public DefaultCamelBeanPostProcessor(org.apache.camel.CamelContext camelContext)
public void setEnabled(boolean enabled)
setEnabled in interface org.apache.camel.spi.CamelBeanPostProcessorpublic boolean isEnabled()
isEnabled in interface org.apache.camel.spi.CamelBeanPostProcessorpublic Object postProcessBeforeInitialization(Object bean, String beanName) throws Exception
postProcessBeforeInitialization in interface org.apache.camel.spi.CamelBeanPostProcessorExceptionpublic Object postProcessAfterInitialization(Object bean, String beanName) throws Exception
postProcessAfterInitialization in interface org.apache.camel.spi.CamelBeanPostProcessorExceptionpublic org.apache.camel.CamelContext getOrLookupCamelContext()
CamelContext to use.public CamelPostProcessorHelper getPostProcessorHelper()
CamelPostProcessorHelperprotected boolean bindToRegistrySupported()
BindToRegistry is supported. This is only intended for standalone
 runtimes such as camel-main, camel-quarkus, etc.protected void injectFirstPass(Object bean, String beanName, Function<Class,Boolean> filter)
protected void injectSecondPass(Object bean, String beanName, Function<Class,Boolean> filter)
protected void injectFields(Object bean, String beanName, Function<Class,Boolean> accept)
protected void injectBindToRegistryFields(Object bean, String beanName, Function<Class,Boolean> accept)
public void injectField(Field field, String endpointUri, String endpointProperty, Object bean, String beanName)
public void injectField(Field field, String endpointUri, String endpointProperty, Object bean, String beanName, boolean binding)
public void injectFieldBeanConfig(Field field, String name, Object bean, String beanName)
public void injectFieldProperty(Field field, String propertyName, String propertyDefaultValue, Object bean, String beanName)
protected void injectMethods(Object bean, String beanName, Function<Class,Boolean> accept)
protected void injectBindToRegistryMethods(Object bean, String beanName, Function<Class,Boolean> accept)
public void setterInjection(Method method, Object bean, String beanName, String endpointUri, String endpointProperty)
public void setterPropertyInjection(Method method, String propertyValue, String propertyDefaultValue, Object bean, String beanName)
public void setterBeanInjection(Method method, String name, Object bean, String beanName)
Apache Camel