У меня есть два интерфейса и один реализованный класс.
- public interface Widget<C>
- public interface WidgetContainer<C>
- public class DefaultWidgetContainer<C>
DefaultWidgetContainer имеет единственный конструктор:
public class DefaultWidgetContainer<C> implements WidgetContainer<C>{
public DefaultWidgetContainer(List<Widget<C>> widgetList){...}
}
Я хочу иметь возможность использовать WidgetContainer через Autowired, и этоПриходите со списком бобов Widget в контексте весны.Как мне создать такой объект БЕЗ , явно создав новый параметризованный WidgetContainer для каждого типа, который мне нужен в аннотированном классе Configuration?Пример:
//Beans created
@Component
public class TestWidgetOne implements Widget<MyDto>{}
@Component
public class TestWidgetTwo implements Widget<MyPojo>{}
//Beans configured for use
@Autowired //contains only TestWidgetOne
private WidgetContainer<MyDto> dtoWidgetContainer;
@Autowired //contains only TestWidgetTwo
private WidgetContainer<MyPojo> pojoWidgetContainer;