クラスAをGINでどこかに注入したい。A クラス コンストラクターには、実行時に認識される ID と、他の 2 つのクラス B および C が必要です。B および C コンストラクターには、パラメーターとして A の同じ ID が必要です。
クラスの例です。
public class A {
@Inject
public A(String id, B b, C c)
{
...
}
}
public class B {
@Inject
public B(String id)
{
...
}
}
public class C {
@Inject
public C(String id)
{
...
}
}
Aインジェクション中にIDをすべてのクラスに伝播するにはどうすればよいですか?
1 つの解決策は、3 つのクラスすべての作成メソッドで AssistedInjectionFactory を使用することですが、これには、ファクトリを使用して B と C をインスタンス化するために、A コンストラクターを変更する必要があります。
GIN を使用して A コンストラクターのボイラープレート コードを回避する他の方法はありますか?