You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2018/07/19 08:34:00 UTC

[jira] [Commented] (CAMEL-10197) camel-spring-boot - Extend the configuration hints to nested properties

    [ https://issues.apache.org/jira/browse/CAMEL-10197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16548992#comment-16548992 ] 

Claus Ibsen commented on CAMEL-10197:
-------------------------------------

So with the improved spring-boot support in Camel and for spring tooling such with the metadata json files in the JAR files we now have a little problem with this nested configuration stuff, as it generates gazillion extra option on some POJOs that are
- duplicate of existing options already on first level
- POJOs that are not configurable with default no-arg ctr and setter/getter
- Also these options have no documentation

Also this drifts a bit how you configure options on component level in regular Camel (not SB) and with SB.
So we should possible turn this off and then if a component need more options to configure itself then we add them as regular first-level options, so its consistent like regular Camel.

> camel-spring-boot - Extend the configuration hints to nested properties
> -----------------------------------------------------------------------
>
>                 Key: CAMEL-10197
>                 URL: https://issues.apache.org/jira/browse/CAMEL-10197
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-spring-boot
>            Reporter: Nicola Ferraro
>            Assignee: Dhiraj Bokde
>            Priority: Major
>             Fix For: 2.18.0
>
>
> Support for spring-boot configuration allows users to configure the component properties but does not give any hint on nested properties.
> There are many components that declare properties on nested beans.
> Eg. camel-docker has only one property named _configuration_ .  I found this pattern in components that allow users to specify a default value on the component and override it on each endpoint, if necessary.
> Setting the property:
> {code}
> camel.component.docker.configuration.host=172.28.128.4
> {code}
> allows a user to specify the docker host, but the tooling does not give suggestions about that property.
> A way to allow the users to view the nested properties is using the {{NestedConfigurationProperty}} annotation on the spring-boot configuration class. The spring-boot inspector will scan the nested class for properties.
> The drawback is that the javadoc is not read from setters. Another drawback is that we will be using a different approach respect to the "read-the-json" one.
> We need to figure out how to add these properties.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)