[armedbear-devel] Isolating ABCL in OSGi

Alessio Stalla alessiostalla at gmail.com
Wed May 19 15:35:39 UTC 2010


On Wed, May 19, 2010 at 5:21 PM, Alan Ruttenberg
<alanruttenberg at gmail.com> wrote:
> Sorry I'm behind on this. In what sense is ABCL "isolated"? For
> example, in the context of protege, the whole point is to be able to
> interact with the same objects the protege editor is interactive with.

That's a matter of correctly configuring the classloaders. I don't
know if OSGi puts any restriction here, but in general if you make
sure the ABCL "private" classloader has the Protege one as one its
ancestors, then ABCL will be able to access all the classes known to
Protege. If you want to pass live Protege objects to the private ABCL
world, you'll have to construct some machinery to expose some parts of
ABCL through a common interface, and get a reference to an instance of
that interface using reflection.

Of course, the whole point of all this is to be able to run multiple
ABCL instances. If you don't have this need, going through all this
pain is useless.

Alessio




More information about the armedbear-devel mailing list