TypeLiteral injection with reflection

Контекст : java using guice (последняя версия)

Привет всем, возможно ли инжектировать некоторый TypeLiteral с помощью Guice таким способом :

public MyClass<?,?> getMyClass(Injector injector, Class<?> a, Class<?> b)
{
     //how to Inject MyClass with type a & b ?
     //e.g : injector.getInstance(MyClass<"a class","b class">)
}

public interface MyClass<S,T>
{
     public T do(S s);
}

public class ClassOne implements MyClass<String,Integer>
{
     public Integer do(String s)
     {
          //do something
     }
}

Module :
bind.(new TypeLiteral<MyClass<String,Integer>(){}).to(ClassOne.class);
bind.(new TypeLiteral<MyClass<String,Double>(){}).to(ClassTwo.class);
...

Как лучше всего решить эту проблему (с помощью Guice)?

Спасибо!

6
задан overflow 15 October 2011 в 09:37
поделиться