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.
