I often encounter situations where a certain class ClassA in a bundle A
depends on a class ClassB in a bundle B, and where ClassB is a subclass of
ClassC in a bundle C.

So it is logical that bundle B has a dependency on bundle C.

But to get the things compiled and working, I am forced in such a situation
to also add an explicit dependency of bundle A on bundle C.
Even when not directly referring to the base-class in my ClassA...

At least this is true in eclipse's PDE.
But in internal discussions here, it seems to be perceived as an inevitable
fact, independent of eclipse or equinox implementation choices...

I would prefer that the implementation decision of ClassB, to inherit part
of its stuff from ClassC, i.o. implementing it directly itself, would be
hidden for ClassA and bundle A.

I.e. it is not a situation where a kind of API is provided in bundle C, and
where bundle A would better use the API, and where bundle B provides
implementations as services etc.
It's a simple class-hierarchy set-up that exposes implementation decisions
and forces dependents to add a-priori "unnecessary" extra dependencies...

If someone has advice or ideas on this, I would be very interested to
hear/learn from them!

Many thanks,
erwin
_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to