Suppose I want to define an interface, FooProvider, and then have multiple implementations of this interface available at runtime (maybe as individual services). In my controller class, I'd like to be able to have all known implementations of this interface injected at runtime so that I can expose them as "options" to the user for getting different types of "Foo" items. This would allow my server-side code to be a lot more modular and allow multiple people to define different ways of plugging in FooProvider services.
From what I see, Grails only gives me the option of injecting a single instance of a service implementation in my controller/domain classes. Is there a way for Grails to inject multiple instances of a service based on an interface type? I guess I'm paralleling this with OSGi's ability to inject implementations of an interface available in the OSGi container...any ideas?