Я использую Dagger2 в проекте google appengine, и у меня есть несколько сервлетов, которые используют, как и должно быть, одноэлементный экземпляр данного объекта (MyObject).
@Singleton
@Component(modules = {MyModule.class})
public interface MyComponent {
IMyObject object();
}
Затем мне нужно, чтобы DaggerMyComponent.create() также был одноэлементным, чтобы я мог получить один и тот же IMyObject для всех сервлетов. Для этого я добавил
DaggerMyComponent INSTANCE = DaggerMyComponent.create()
к моему интерфейсу MyComponent. Тем не менее, это по-прежнему позволяет повторно вызывать create() по ошибке, и это не обязательно выглядит для меня красивым решением.
Любые идеи?
Спасибо!