camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Spring boot starter code generation
Date Wed, 17 May 2017 10:50:19 GMT
Hi

Is the idea to still run the maven plugin to auto generate the spring
boot starter skeleton code, and then be able to write addition source
code for extra stuff?

If so I would suggest to use separate packages so the auto generated
code and the manual code are separated.

But yeah good idea for such a functionality as the more we learn and
use spring boot the more we can make it more awesome.



On Wed, May 17, 2017 at 12:29 PM, Luca Burgazzoli <lburgazzoli@gmail.com> wrote:
> Yeah that's something I was thinking about but then I ended up with
> testing something different, do not know if it is the best way :)
>
> So the camel-package-maven-plugin would generate:
>
> - org.apache.camel.component.ehcache.springboot.EhcacheComponentAutoConfiguration
> - org.apache.camel.component.ehcache.springboot.EhcacheComponentConfiguration
> - org.apache.camel.component.ehcache.springboot.EhcacheComponentConfigurer
> - org.apache.camel.component.ehcache.springboot.configurer.DefaultConfigurer
>
> Then EhcacheComponentAutoConfiguration applies all the configurer
> (type EhcacheComponentConfigurer) it can found to the EhcacheComponent
> it is setting up and there will be at least one that is the
> DefaultConfigurer that simply apply the properties from
> EhcacheComponentConfiguration. The advantage of this method is that we
> can use standard spring annotation to include/exclude configurer
> without having to manually write all the conditions.
>
> I've created a simple example here:
> https://github.com/lburgazzoli/camel-ehcache-starter
>
> ---
> Luca Burgazzoli
>
>
> On Tue, May 16, 2017 at 11:19 PM, Zoran Regvart <zoran@regvart.com> wrote:
>> Hi Luca,
>>
>> On Tue, May 16, 2017 at 6:23 PM, Luca Burgazzoli <lburgazzoli@gmail.com> wrote:
>>> What would be the best option to keep the auto generation awesomeness
>>> and at the same time have a way to tweak the process ?
>>
>> BeanDefinitionRegistryPostProcessor can remove and add bean
>> definitions, so you can do pretty much anything you need.
>>
>> So perhaps a BeanDefinitionRegistryPostProcessor to load custom SPI to
>> perform additional post processing of the bean definition registry,
>> then have this BeanDefinitionRegistryPostProcessor and SPI interface
>> in camel-spring-boot, and the implementation of the SPI in the
>> component starter. The SPI implementation can be loaded using
>> FactoryFinder.
>>
>> zoran
>> --
>> Zoran Regvart



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Mime
View raw message