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

Matt Sicker commented on LOG4J2-860:
------------------------------------

I'd actually prefer to do this after we go Java 1.8+ (if ever) so that we can 
actually remove the need to specify attribute names and such in the plugin 
factory method by reflecting on param names instead.

> 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
>
> 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
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to