ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Raul Kripalani <ra...@apache.org>
Subject OSGi integration ready for review
Date Tue, 24 Nov 2015 20:11:25 GMT
Hello all,

The initial OSGi integration is ready for review in branch ignite-1270.
Features included:

* OSGi manifest for most modules. I could OSGi-fy 22 modules. Some are left
out due to complexity or not supporting OSGi: hadoop, mesos, cloud, gce,
yarn, etc.
* Karaf features repository with 1 feature per module + a global ignite-all
feature. Each feature installs the required dependencies into the container.
* Ignite OSGi Bundle Activator which activates an Ignite OSGi configuration
and injects the appropriate OSGi-friendly classloader.
* Two classloading strategies for OSGi:
    * Bundle Delegating => attempts to find the class in the bundle that
loaded Ignite, falling back to ignite-core.
    * Container Sweep => same as above, but sweeps the entire OSGi
container for the first hit as the ultimate fallback (keeps a cache).

(@Romain – the latter should work for you).

Since generating the Karaf features repo (features.xml) requires including
version numbers of the 3rd party deps, I have promoted the version numbers
I needed to parent/pom.xml as Maven properties. This is also a Maven best
practice.

In this branch, IGNITE-1810 is also included. I was able to test it locally
only, given that the CI test job is broken in TeamCity.

Note: Spring configuration of Ignite is not supported due to Spring DM
1.2.1 not being compatible with Spring Framework 4.x anymore. This is being
discussed at the SMX community [1]. For now, we only support programmatic
configuration.

As you know, I created a user guide section for OSGi in the 1.5 docs [2].

I'd like this feature to target 1.5. It does modify existing Ignite
codebase, so it should be pretty safe to release.

[1]
http://servicemix.396122.n5.nabble.com/Spring-DM-for-Spring-4-in-SMX-Karaf-td5723130.html
[2] https://dash.readme.io/project/apacheignite/v1.5

*Raúl Kripalani*
PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
Messaging Engineer
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message