Phillippe, Perhaps you're referring to binding an Injector. No, you can't do that.
You can, however, easily inject an Injector. Just don't bind it...you get that for free. -Fred On Thu, Nov 4, 2010 at 12:06 AM, Philippe Beaudoin < [email protected]> wrote: > This brings another question, however. How do you access the injector? > I've tried injecting it but Guice complains that I cannot do that. > > Cheers, > > Philippe > > On Wed, Nov 3, 2010 at 8:58 PM, Kartik Kumar <[email protected]> > wrote: > > If you have a reference to already instantiated object, can't you use > > Injector#injectMembers(Object) > > > > On Wed, Nov 3, 2010 at 3:52 PM, David <[email protected]> wrote: > >> > >> UPDATE: > >> In the few days of waiting for my post to pass moderation, the > >> developer of the 3rd party library contacted me. Turns out there IS > >> actually a way to pass an already instantiated object for the GUI to > >> use and call. He updated his wiki to document how. This basically > >> solves my problem though I am still curious about the question itself. > >> > >> Thanks, > >> ~David > >> > >> > >> On Oct 31, 7:33 pm, David <[email protected]> wrote: > >> > Alright I have read through the Guice user-guides and I am using Guice > >> > on several projects now. I am still pretty new to Guice though. > >> > Currently I have run into a bit of a snag and I wanted some advice on > >> > how to proceed. I don't know how to solve the following issue except > >> > by using static factories (which I know is frowned upon). > >> > > >> > Lets say I have a service, 'MyService', which is bound to > >> > 'MyServiceImpl', is injected into multiple places in my project, and > >> > is a Singleton (it has state that all parts of the program must be > >> > aware of). So far so good. This works as expected. > >> > > >> > Now one of the places I need access to this service is a class call > >> > 'MyGuiScreenController' which implements a third party interface, > >> > 'ScreenController'. Now here is where things get interesting. The > >> > rest of my code never touches MyGuiScreenController. It is > >> > instantiated (using a default, no argument constructor) by a third > >> > party (GUI) library via reflection. I have no control over this > >> > process. It has an inherited method 'bind' which is called when the > >> > GUI is setup, and then any number of methods I define based on GUI > >> > events. > >> > > >> > Now as I said, I could probably get away with a static factory and > >> > call said factory inside the bind method to get access to 'MyService', > >> > but is this the only way? It might get especially ugly as I will > >> > probably have many similar classes to 'MyGuiScreenController', all > >> > needing certain other service classes. Will I need to make a static > >> > factory for each one of these? That seems like a bad solution, but > >> > the only one I can figure out at the moment. > >> > > >> > Thanks for any help and please ask any questions if I did not explain > >> > myself fully. > >> > > >> > ~David > >> > >> -- > >> 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]<google-guice%[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]<google-guice%[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]<google-guice%[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.
