Мои примеры занятий:
public class MyModel implements Model
{
:
:
}
public class SingleModelProvider implements ModelProvider
{
public SingleModelProvider(Model providedModel, List actions)
{
:
}
}
План состоит в том, чтобы повторно использовать класс SingleModelProvider в нескольких пакетах, чтобы обеспечить различные реализации ModelProvider. Что мне нужно сделать в каждом пакете, так это просто создать экземпляр SingleModelProvider с соответствующими параметрами для конструктора. Довольно простой сценарий с использованием любой DI-инфраструктуры. Я хотел бы зарегистрировать службы ModelProvider, используя DS (декларативные службы), если это возможно, без необходимости писать стандартный код в активаторе.
Возможно ли это?
Кажется, я не могу найти никакой документации о том, как это сделать, поскольку объявление класса в DS, похоже, не допускает аргументы конструктора (или сеттеры в этом отношении).
Использую ли я фабрику? Я не уверен, стоит ли это делать, поскольку это может упростить задачу, чем использование активатора и службы публикации вручную.