Hello,
Long story short, I'd love to be able to intercept the resource injection
calls.
For example, in our application we do not use Spring, and also, we do not
expect the developers to use Ignite-specific annotations in the application
code. Instead, we use the standard javax.inject API's @Inject which makes
integration with Ignite a bit painful since every application-level
closure/class needs to be un-/wrapped before and after serialization. On the
receiving node, the wrapper code looks up a local instance of injector (we use
Guice) and finally injects the dependencies.
It would be nice to be able to define a custom injection callback (an SPI) to
which Ignite would delegate at specific points during the resource injection
flow. The current implementation of GridResourceProcessor makes no provision
for such thing.
I also think this feature would allow to make the injector support pluggable:
Spring, Guice, Dagger, whatever... Going forward, it would also be possible to
gradually phase out all injection related Ignite annotations in favor of the
standard javax.inject API.
Please share your thoughts!
Andrey