У меня есть фабрика, которую я люблю переопределить с помощью Guice:
enum MyObjects { OBJECT1, OBJECT2, ... }
class Object1 implements SomeInterface { ... }
class Object2 implements SomeInterface { ... }
...
class Factory {
public static SomeInterface createObject(MyObjects obj) {
switch (obj) {
case OBJECT1: return new Object1();
case OBJECT2: return new Object2();
...
}
}
Есть ли простой способ ее реализовать? Что-то вроде Provider.get (параметр) и использование привязок для определения того, какой объект следует использовать в каждом случае?