[ 
https://issues.apache.org/jira/browse/LOG4J2-2700?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Matt Sicker resolved LOG4J2-2700.
---------------------------------
    Resolution: Fixed

Support for this particular feature was added to master.

> Add support for injecting plugin configuration via builder methods
> ------------------------------------------------------------------
>
>                 Key: LOG4J2-2700
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-2700
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Plugins
>            Reporter: Matt Sicker
>            Assignee: Matt Sicker
>            Priority: Major
>             Fix For: 3.0.0
>
>
> Prior to this feature, a plugin builder class could only have configuration 
> values injected via fields. While all Log4j plugin builder classes typically 
> include corresponding setFoo or withFoo methods to set values to all those 
> fields, these methods were not used by the plugin system.
> This feature is to expand the support of using @PluginAttribute, 
> @PluginElement, @PluginValue, @PluginNode, @PluginConfiguration, 
> @PluginAliases, and any validation annotations on single-argument methods in 
> a builder class. The default name extracted for these methods should be the 
> "foo" from setFoo or withFoo if named that way, or it should use the name of 
> the method parameter otherwise.
> As with parameters injected via a static factory method, these values should 
> be validated by checking their types as well as validation constraints before 
> being bound. Default values can be specified the same way as well. This 
> allows for each setter or wither method to perform any addition programmatic 
> validation if necessary, and it reduces coupling of implementation details to 
> the public API of a plugin.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to