У меня есть приложение Wildfly 10, в котором я создал собственную аннотацию @Qualifer:
@Retention(RetentionPolicy.RUNTIME)
@Target({FIELD,METHOD,PARAMETER,TYPE})
@Qualifier
public @interface DbType {
/**
* If this DbType is part of the initialization process for an existing DB
*/
boolean init() default false;
}
Затем у меня есть пара методов-производителей:
@Produces
@DbType
public MyBean createBean1(){
return new MyBean();
}
@Produces
@DbType(init=true)
public MyBean createBean2(){
return new MyBean(true);
}
В моем кодеЯ хочу программно получить все bean-компоненты с заданной аннотацией, но не знаю, как.
Instance<MyBean> configs = CDI.current().select(MyBean.class, new AnnotationLiteral<DbType >() {});
вернет оба bean-компонента.
Как я могу указать в моем CDI.current (). Select (), что мне нужны только бины с определителем @MyType(init=true)
?