if MapBinder doesn't make the trick, maybe
AssistedInject<http://code.google.com/p/google-guice/wiki/AssistedInject>can
help you too

jordi

On Fri, May 20, 2011 at 7:19 AM, Martin Cavanagh <
[email protected]> wrote:

> Hi Colin.
>
> That sounds very promissing.
> I will try that out, thanks for you help.
>
> Martin
>
>
>
> On 20 May 2011 01:13, Colin wrote:
>
>> Sounds like for your use case 
>> MapBinder<http://google-guice.googlecode.com/svn/trunk/latest-javadoc/com/google/inject/multibindings/MapBinder.html>
>>  in
>> the multibindings extension would be appropriate.
>>
>> --
>> Colin
>>
>>
>> On Thu, May 19, 2011 at 7:00 PM, Martin Cavanagh <
>> [email protected]> wrote:
>>
>>>  Hi Fred.
>>>
>>> The problem is, that is too static for me.
>>>
>>> I have a series of customers / users sharing 1 database.
>>> each users have different settings (the constants).
>>> depending on which constant they have saved in the database, I wish get a
>>> different implementation.
>>> What I desire is.
>>>
>>> String myConstant = "SOME_CONSTANT"; //or "SOME_OTHER_CONSTANT";
>>>
>>> Provider<GlobalSearchController> p...init provider
>>>
>>> GlobalSearchController controller = p.get()@Named(myConstant );
>>>
>>> But the Provider doesn't seem to envisage the use of the @Named
>>> parameter.
>>>
>>> I assume I've just missed the point of it all.
>>> I want to bind at run time via a variable.
>>> Inject wants me to define my binding conditions in the module?
>>>
>>> Thanks
>>>
>>> Martin
>>>
>>>
>>> On 20.05.2011 00:51, Fred Faber wrote:
>>>
>>> Are you looking for:
>>>
>>> @Inject @Named("SOME_CONSTANT")
>>> GlobalSearchController globalSearchController;
>>>
>>>  Fred
>>>
>>> On Thu, May 19, 2011 at 5:39 PM, Marty <
>>> [email protected]> wrote:
>>>
>>>> Hi Guice users.
>>>>
>>>> I'm rather new to Guice, but I'm really enjoying it.
>>>> I have a fairly simple problem, but I can't figure out how to solve
>>>> this.
>>>>
>>>> In my application I have some variables, which I want to use to decide
>>>> which instance to create.
>>>>
>>>> e.g.
>>>> my modules
>>>>        bind(GlobalSearchController.class)
>>>>            .annotatedWith(Names.named("SOME_CONSTANT"))
>>>>                .to(GlobalSearchControllerImpl.class);
>>>>
>>>>
>>>>        bind(GlobalSearchController.class)
>>>>            .annotatedWith(Names.named("SOME_OTHER_CONSTANT"))
>>>>                .to(GlobalSearchControllerOtherImpl.class);
>>>>
>>>> ...
>>>> so then later in my code has
>>>> String = "SOME_CONSTANT";
>>>>
>>>> now how do I get Guice to give me an instance which matches to my
>>>> constant?
>>>>
>>>> write now I have written a provider, which does IF/ELSE before
>>>> creating an instance with new.
>>>> Its not really now I envisaged solving this problem.
>>>>
>>>> Thanks in advance
>>>>
>>>> Martin
>>>>
>>>> --
>>>> 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.
>>>
>>>
>>>  --
>>> 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.
>>
>
>  --
> 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.

Reply via email to