I have been using factories to do this. Something like:
class PromoFactory {
@Inject
Provider<SpringPromo> springPromo;
@Inject
Provider<WinterPromo> winterPromo;
Promo getPromo(Season season) {
if( season == Season.Winter ) return winterPromo;
return springPromo;
}
}
Then inject the PromoFactory.
This pattern can be used for the various other scenarios you describe,
I believe.
Philippe
On Tue, Feb 1, 2011 at 2:24 AM, Adrian <[email protected]> wrote:
> Hello,
>
> I have the following problem :
>
> Let's say that I have a Display class which needs a Promo to display.
>
> I have two type of promos SpringPromo and WinterPromo.
>
> The display doesn't care what kind of promo it displays as long it is
> a Promo.
>
> I would like to find a solution so
> - when season is Winter, to inject WinterPromo
> - when seazon is Spring, to inject SpringPromo
>
> Can you help me find a solution ?
>
> What if there are other (many)kinds of promos which depend on
> seasons ?
> What if there are other (many)kinds of seasons ?
> What if not only Promos depend on seazon ?
>
> Thank you,
>
> Adrian
>
> --
> You received this message because you are subscribed to the Google Groups
> "google-guice" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/google-guice?hl=en.
>
>
--
You received this message because you are subscribed to the Google Groups
"google-guice" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-guice?hl=en.