Skip to content

Replace @NameProvider and @AliasesProvider registration of strategies in ConfigurableInstanceFactory #3870

@jvz

Description

@jvz

During the 3.x DI system overhaul, one major change made to most of the plugin annotations was migrating the strategy code for interpreting annotations. Previously, it would be specified via plugin visitor classes, and the annotation would be meta-annotated to mark the strategy class to use. This is excess implementation detail that leaks into the annotations of plugins, and that already raised issues in the past when log4j-plugins had to be separated from log4j-core in order for the annotation processor to work in a modular environment.

The SPI to replace this should allow for registering strategies on how to extract a qualifier name and aliases from an injection point. The resulting plugin annotations should therefore no longer be meta-annotated with implementation details.

Metadata

Metadata

Assignees

Labels

graalvmIssue related to GraalVM supportpluginsAffects the plugin system

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions