You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Łukasz Dywicki (Jira)" <ji...@apache.org> on 2022/10/17 14:48:00 UTC
[jira] [Created] (IGNITE-17915) Generalize support for inversion of control mechanisms
Łukasz Dywicki created IGNITE-17915:
---------------------------------------
Summary: Generalize support for inversion of control mechanisms
Key: IGNITE-17915
URL: https://issues.apache.org/jira/browse/IGNITE-17915
Project: Ignite
Issue Type: Improvement
Components: spring
Affects Versions: 2.14
Reporter: Łukasz Dywicki
Current inversion of control support for Ignite is bound to Spring framework and Spring ApplicationContext interface which is used to lookup beans by type or name.
Above lookup criteria are fairly generic and can be used to first - extract, second - generalize support for foreign injections within Ignite itself. With little work it is possible to open this for further extensions. This is known pattern used in other Apache projects, ie. [{{BeanRepository}}|https://github.com/apache/camel/blob/camel-3.19.0/core/camel-api/src/main/java/org/apache/camel/spi/BeanRepository.java] and [{{Registry}}|https://github.com/apache/camel/blob/camel-3.19.0/core/camel-api/src/main/java/org/apache/camel/spi/Registry.java].
Main motivation is Ignite running under OSGi which does not host Spring (Spring framework dropped support for OSGi a while ago), and has alternative ways to provide similar functionality. For OSGi there are mechanisms such as OSGi Blueprint and OSGi Service Registry itself.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)