HK2 Джерси. Способ создания @Service с опциями env - PullRequest
0 голосов
/ 28 апреля 2018

Как я вижу, я могу использовать аннотацию автопоиска @Service, чтобы создать singleton, чтобы использовать ее через @Inject. Как:

@Service
class MyService {
    //.....
}

@Service
class MyOtherService {
    @Inject MyService myService;
    //.....
}

Но хотел бы создать Сервис, используя параметры, которые зависят от среды. Я мог бы сделать это, используя AbstractBinder как:

        final ResourceConfig resourceConfig = new ResourceConfig()
            .register(new AbstractBinder() {
                @Override
                protected void configure() {
                    String someOption = "optionOne";
                    String anotherOption = "optionTwo";
                    MyService myService = new MyService.create(someOption, anotherOption);
                    bind(MyService).to(MyService.class).in(Singleton.class);
                }
            })

Но как мне сделать то же самое, но с использованием стиля автоконфигурации аннотаций? Без создания объекта AbstractBinder.

...