ThorbenKuck / ThorbenKuck/WireDI

[Feature]: Support for qualifiers and property injection for the @Aspect

Open
#4 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature-request priority-medium
Dominant language
Java
Stars
6
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Type of feature request

Extension of an existing feature

What kind of feature would you like to see

The @Aspect Annotation allows for auto-creation of an AspectHandler during compile time. The advantage of this is, that you can inject any class dynamically into the method.

However, at the current point in time, this only supports singular parameters. It is missing:

  • List of features
  • Qualified features
  • Properties
  • Resolvables
Code Examples
public class MyHandler {
    @Aspect(around = Example.class)
    public Object handle(
                  ExecutionContext<Example> context,
                  @AwesomeQualifier MyService myService, 
                  List<MyService> allServices),
                  @Resolve("${remote.port:5005}") int remotePort,
                  @Property(name = "my.test.property") String testProperty
    {
        // ...
    }
}
Feature Design

No response

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the @Aspect annotation and the compile-time creation of AspectHandler. Review how singular parameters are currently injected, then define and verify support for lists, qualifiers, properties, and resolvables as shown in the example; the feature is done when all four forms work through the existing @Aspect flow.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.