[Feature] Can @Method annotation provide more possibilities to control which @Method ultimately takes effect with minimal granularity, including on methods of classes using @DubboService annotation, methods of parent classes, and abstract methods of interfaces
Pre-check
- [X] I am sure that all the content I provide is in English.
Search before asking
- [X] I had searched in the issues and found no similar feature requirement.
Apache Dubbo Component
Java SDK (apache/dubbo)
Descriptions
Can @method annotation provide more possibilities to control which @method ultimately takes effect with minimal granularity, including on methods of classes using @DubboService annotation, methods of parent classes, and abstract methods of interfaces.
And consider adding wildcard characters to match the methods.Or add an annotation for configuration.
for example:
public interface TestGateway {
Response create(String t);
@Method(retries = 2, timeout = 1000)
Response createOther(String t);
@Method(retries = 2, timeout = 1000)
Response createTest(String t);
}
@DubboService(interfaceClass = TestGateway.class, version = "1.0.0", group = "public",
methods = {
@Method(name = "create*", retries = 5, timeout = ,6000)
}
)
public class TestGatewayImpl implements TestGateway {
@Override
public Response create(String t) {
return Response.buildSuccess();
}
@Override
public Response createOther(String t) {
return Response.buildSuccess();
}
@Override
@Method(retries = 1, timeout=500))
public Response createTest(String t) {
return Response.buildSuccess();
}
}
In the above example, the retry count for create is 5, with a timeout of 6000 milliseconds. The retry count for create Other is 2, with a timeout of 1000 milliseconds. The retry count for create Test is 1, with a timeout of 500 milliseconds
Related issues
No response
Are you willing to submit a pull request to fix on your own?
- [X] Yes I am willing to submit a pull request on my own!
Code of Conduct
- [X] I agree to follow this project's Code of Conduct
Would you like to support it?
Yes, I'd be happy to help with the development of this feature. Is there anything I should pay attention to?
You can submit PR directly. If there are any problems, we will raise them during the review process.