Although in your text you dont mention childinjectors... only submodules?

2011/10/20 nino martinez wael <[email protected]>:
> I think its exactly what you are writing I am doing thats why i don't
> understand the error. I don't even bind more than one interface of the
> same type on any level..
>
> 2011/10/20 Sam Berlin <[email protected]>:
>> Do you have a concrete example of a few bindings and how you want them
>> organized? I'm having trouble understanding what you're going for.
>> Here's some examples of visibility with private modules & bindings:
>> ParentModule binds Foo & PrivateSubModuleA & PrivateSubModuleB
>>    PrivateSubModuleA binds Bar, Baz & PrivateSubSubModuleA, exposes Baz
>>      PrivateSubSubModuleA binds & exposes Buz
>>    PrivateSubModuleB binds Bar, Boz & PrivateSubSubModuleB, exposes Boz
>>      PrivateSubSubModuleB binds & exposes Buz
>> Foo cannot be bound in any module other than ParentModule because all
>> modules already see Foo.  Foo can be injected by anything, since it's
>> available everywhere.
>> Bar can be bound in both PrivateSubModuleA & PrivateSubModuleB because they
>> are sibling private modules and the binding isn't exposed.  Bar cannot be
>> bound in PrivateSubSubModuleA or PrivateSubSubModuleB, because their parent
>> modules have Bar bound.  Foo cannot inject Bar, because it isn't visible to
>> things from ParentModule.
>> Baz cannot be bound in any module other than PrivateSubModuleA because all
>> modules already see Baz (since it's exposed to ParentModule).  Baz can be
>> injected by anything, since it's available
>> everywhere.
>> Buz can be bound in the SubSub modules, because they are effectively the
>> same namespace as Bar -- visible to the Sub & SubSub modules only.
>>  Foo cannot inject Buz, because it isn't visible to things from
>> ParentModule.
>> Boz cannot be bound in any module other than PrivateSubModuleB because all
>> modules already see Boz (since it's exposed to ParentModule).  Boz can be
>> injected by anything, since it's available everywhere.
>>
>> sam
>>
>> On Thu, Oct 20, 2011 at 11:05 AM, nino martinez wael
>> <[email protected]> wrote:
>>>
>>> I have this setup
>>>
>>> InjectorA-ModuleA-InjectorB-ModuleB-InjectorC-ModuleC-Final injector
>>>
>>>  \----ModuleD--/
>>>
>>> On the B level there are multiple Modules which all are private
>>> however they possibly expose a interface that possible used in one of
>>> the multiple modules on layer C. However I get this message on the c
>>> level when it tries to inject the interface from B level:
>>>
>>>  Unable to create binding for
>>> com.netdesign.remedy.provider.RemedyWallboardDataProviderInterface. It
>>> was already configured on one or more child injectors or private
>>> modules
>>>
>>> will private module only expose to siblings or does it work on children
>>> aswell?
>>>
>>> regards Nino
>>>
>>> --
>>> 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