J'ai une classe qui charge des fichiers dans un objet spécifique qui contient lui-même plusieurs objets qui contiennent des champs différents. Exmaple:Google Guice 2.0
class RootItem
{
public SubItemType1 sub1;
}
class SubItemType1
{
public SubItemType2 sub2;
public int data1;
public float data2;
}
class SubItemType2
{
public int data3;
public boolean data4;
}
Bon maintenant j'ai une autre classe qui contient une méthode qui renverra un RootItem avec tous les sous-éléments fixés à des valeurs spécifiques. Ensuite, je voudrais, en utilisant Guice, pouvoir appeler ce chargeur une fois et ensuite chaque fois que quelqu'un demande un @Inject de la classe SubItemType1, alors l'objet RootItem.sub1 est retourné et si quelqu'un demande une classe SubItemType2 puis RootItem. sub1.sub2 est renvoyé.
Est-ce que cela peut être accompli?
Merci,
ExtremeCoder
(Vous pouvez également utiliser bind (RootItem.class) .toInstance (rootItem) etc. - Personnellement, je préfère les méthodes @Provides, car elles fonctionnent également avec Google Gin) –