Я хочу иметь возможность сделать что-то вроде этого:
@GET
@Path("test")
public Response someMethod(@Context MyCustomContext myCustomContext) {
...
}
Я нашел этот старый пост о переполнении стека, в котором описываются различные способы сделать это здесь: Использование @Context, @Provider и ContextResolver в JAX-RS . Я реализовал верхний ответ (который не зависит от реализации) и заставил его работать, но он не сделал именно то, что я хочу. Вместо этого это выглядело так:
@GET
@Path("test")
public Response someMethod(@Context Providers providers) {
ContextResolver<MyCustomContext> p = providers.getContextResolver(MyCustomContext.class, MediaType.WILDCARD_TYPE);
MyCustomContext myCustomContext = p.getContext(null);
...
}
На этом посту были и другие решения, но они зависели от реализации. В документации по quarkus я заметил, что здесь есть раздел о пользовательских контекстах, который можно найти здесь: https://quarkus.io/guides/cdi-reference#synthetic-beans,, но это характерно для расширений. У кого-нибудь есть идеи, как это сделать в проекте quarkus?