private AggregationStrategy createAggregationStrategy(RouteContext routeContext) { AggregationStrategy strategy = getAggregationStrategy(); if (strategy == null && aggregationStrategyRef != null) { Object aggStrategy = routeContext.lookup(aggregationStrategyRef, Object.class); if (aggStrategy instanceof AggregationStrategy) { strategy = (AggregationStrategy) aggStrategy; } else if (aggStrategy != null) { AggregationStrategyBeanAdapter adapter = new AggregationStrategyBeanAdapter(aggStrategy, getAggregationStrategyMethodName()); if (getAggregationStrategyMethodAllowNull() != null) { adapter.setAllowNullNewExchange(getAggregationStrategyMethodAllowNull()); adapter.setAllowNullOldExchange(getAggregationStrategyMethodAllowNull()); } strategy = adapter; } else { throw new IllegalArgumentException( "Cannot find AggregationStrategy in Registry with name: " + aggregationStrategyRef); } } if (strategy != null && strategy instanceof CamelContextAware) { ((CamelContextAware) strategy).setCamelContext(routeContext.getCamelContext()); } return strategy; }
@Override protected void doStart() throws Exception { // inject CamelContext before starting if (jsonMarshal instanceof CamelContextAware) { ((CamelContextAware) jsonMarshal).setCamelContext(camelContext); } if (jsonUnmarshal instanceof CamelContextAware) { ((CamelContextAware) jsonUnmarshal).setCamelContext(camelContext); } if (xmlMarshal instanceof CamelContextAware) { ((CamelContextAware) xmlMarshal).setCamelContext(camelContext); } if (xmlUnmarshal instanceof CamelContextAware) { ((CamelContextAware) xmlUnmarshal).setCamelContext(camelContext); } ServiceHelper.startServices(jsonMarshal, jsonUnmarshal, xmlMarshal, xmlUnmarshal); }
public Object beforeInit( Object bean, String beanName, BeanCreator beanCreator, BeanMetadata beanMetadata) { injectFields(bean, beanName); injectMethods(bean, beanName); if (bean instanceof CamelContextAware) { ((CamelContextAware) bean).setCamelContext(getCamelContext()); } return bean; }
@Bean(name = "pgp-dataformat") @Scope("prototype") @ConditionalOnClass(CamelContext.class) @ConditionalOnMissingBean(PGPDataFormat.class) public PGPDataFormat configurePGPDataFormat( CamelContext camelContext, PGPDataFormatConfiguration configuration) throws Exception { PGPDataFormat dataformat = new PGPDataFormat(); if (CamelContextAware.class.isAssignableFrom(PGPDataFormat.class)) { CamelContextAware contextAware = CamelContextAware.class.cast(dataformat); if (contextAware != null) { contextAware.setCamelContext(camelContext); } } Map<String, Object> parameters = new HashMap<>(); IntrospectionSupport.getProperties(configuration, parameters, null, false); IntrospectionSupport.setProperties( camelContext, camelContext.getTypeConverter(), dataformat, parameters); return dataformat; }
@Bean(name = "ognl-language") @Scope("prototype") @ConditionalOnClass(CamelContext.class) @ConditionalOnMissingBean(OgnlLanguage.class) public OgnlLanguage configureOgnlLanguage( CamelContext camelContext, OgnlLanguageConfiguration configuration) throws Exception { OgnlLanguage language = new OgnlLanguage(); if (CamelContextAware.class.isAssignableFrom(OgnlLanguage.class)) { CamelContextAware contextAware = CamelContextAware.class.cast(language); if (contextAware != null) { contextAware.setCamelContext(camelContext); } } Map<String, Object> parameters = new HashMap<>(); IntrospectionSupport.getProperties(configuration, parameters, null, false); IntrospectionSupport.setProperties( camelContext, camelContext.getTypeConverter(), language, parameters); return language; }
@Bean @ConditionalOnClass(CamelContext.class) @ConditionalOnMissingBean(GsonDataFormat.class) public GsonDataFormat configureGsonDataFormat( CamelContext camelContext, GsonDataFormatConfiguration configuration) throws Exception { GsonDataFormat dataformat = new GsonDataFormat(); if (dataformat instanceof CamelContextAware) { ((CamelContextAware) dataformat).setCamelContext(camelContext); } Map<String, Object> parameters = new HashMap<>(); IntrospectionSupport.getProperties(configuration, parameters, null, false); IntrospectionSupport.setProperties( camelContext, camelContext.getTypeConverter(), dataformat, parameters); return dataformat; }
@Bean(name = "jsonpath-language") @ConditionalOnClass(CamelContext.class) @ConditionalOnMissingBean(JsonPathLanguage.class) public JsonPathLanguage configureJsonPathLanguage( CamelContext camelContext, JsonPathLanguageConfiguration configuration) throws Exception { JsonPathLanguage language = new JsonPathLanguage(); if (language instanceof CamelContextAware) { ((CamelContextAware) language).setCamelContext(camelContext); } Map<String, Object> parameters = new HashMap<>(); IntrospectionSupport.getProperties(configuration, parameters, null, false); IntrospectionSupport.setProperties( camelContext, camelContext.getTypeConverter(), language, parameters); return language; }