[ https://issues.apache.org/jira/browse/CAMEL-17505?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nicolas Filotto updated CAMEL-17505: ------------------------------------ Description: For Java DSL then we have a data format builder at {{org.apache.camel.builder.DataFormatClause}} This class is very verbose as for Java DSL we have overloaded methods to set the various options, but it can get too far like {{xmlSecurity}} with 15 methods. Instead, we should generate a builder DSL class the {{DataFormatClause}} can use. {noformat} marshal() .secureXml() .optionA(bla bla) .optionB(bla bla) .optionC(bla bla) .end(){noformat} Then we can still manually add a few methods for common use cases, so you can do {{marshal().secureXml(bla bla, true)}}. was: For Java DSL then we have a data format builder at {{org.apache.camel.builder.DataFormatClause}} This class is very verbose as for Java DSL we have overloaded methods to set the various options, but it can get too far like {{xmlSecurity}} with 15 methods. Instead, we should generate a builder DSL class the {{DataFormatClause}} can use. {noformat} marshal() .secureXml() .optionA(bla bla) .optionB(bla bla) .optionC(bla bla) .end(){noformat} Then we can still manually add a few methods for common use cases, so you can do {{{}marshal().secureXml(bla bla, true){}}}. > camel-core - DataFormatDSL that is source code generated > -------------------------------------------------------- > > Key: CAMEL-17505 > URL: https://issues.apache.org/jira/browse/CAMEL-17505 > Project: Camel > Issue Type: Improvement > Components: build system, camel-core > Reporter: Claus Ibsen > Assignee: Nicolas Filotto > Priority: Major > Fix For: Future > > > For Java DSL then we have a data format builder at > {{org.apache.camel.builder.DataFormatClause}} > This class is very verbose as for Java DSL we have overloaded methods to set > the various options, but it can get too far like {{xmlSecurity}} with 15 > methods. > Instead, we should generate a builder DSL class the {{DataFormatClause}} can > use. > {noformat} > marshal() > .secureXml() > .optionA(bla bla) > .optionB(bla bla) > .optionC(bla bla) > .end(){noformat} > Then we can still manually add a few methods for common use cases, so you can > do {{marshal().secureXml(bla bla, true)}}. -- This message was sent by Atlassian Jira (v8.20.10#820010)