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

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

This is now supported in master. A related cleanup here would be to replace 
@PluginBuilderAttribute with @PluginAttribute everywhere, though I believe 
there's an edge case to consider which is currently commented as a FIXME.

> Unify plugin builders and plugin factories
> ------------------------------------------
>
>                 Key: LOG4J2-860
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-860
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Plugins
>    Affects Versions: 2.2
>            Reporter: Matt Sicker
>            Assignee: Matt Sicker
>            Priority: Major
>             Fix For: 3.0.0
>
>
> Before we can even settle on a preferred way to create plugins reflectively, 
> it would be nice to combine the PluginAttribute and PluginBuilderAttribute 
> annotations. In fact, allowing for flexibility in dependency injection for 
> creating plugins would be better than strictly allowing factory methods or 
> builder classes only. For instance, setter methods could be annotated for 
> injection which allows for further customization.
> Since the ability to reflect on a parameter to get its name wasn't added 
> until Java 1.8 (and alternatives require using bytecode libraries like asm), 
> it would be nice to add some sort of plugin validation to the annotation 
> processor to prevent users from forgetting to specify an attribute name when 
> attached to a parameter instead of a field.



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

Reply via email to