I don't know if you want use full EMF for Desktop or not.
Here the 2 solutions that I see :
Solution 1 : full EMF (for Desktop)
* SWT, Swing.. (Desktop) implementation will depends on EMF.
* GWT, .. (WEB...) implementation will not depends on EMF.
So
* AbstractUFaceKitEcore (Desktop) will extends EObjectImpl (EObject
implementation of EMF)
* ConstraintedDevice (WEB,...) will extends UbaseBean.
I'm not against having EMF dependecies, but perhaps Swing user will
not understood
why they must depends on EMF?
Solution 2 : EMF or not (for Desktop)
We can choose if we must based on EMF or not.
To do that, we must create 2 projects which defines
AbstractUFaceKitEcore with same package :
* org.ufacekit.ui.core.emf : we will have
org.ufacekit.ui.core.AbstractUFaceKitEcore which extends EObjectImpl.
* org.ufacekit.ui.core.ubean : we will have
org.ufacekit.ui.core.AbstractUFaceKitEcore which extends Ubasebean.
To choose if we want use EMF or not, we must just put the good jar
into classpath org.ufacekit.ui.core.emf.jar
or org.ufacekit.ui.core.ubean.jar.
For the 2 solutions, JFaceLabel code will have not dependencies with EMF.
We will have always this code :
public void set(int featureId, Object value) {
switch (featureId) {
case TEXT_PROPERTY:
setText(ConvertUtils.getString(value));
break;
default:
super.set(featureId, value);
break;
}
}
If it that, I don't understand the benefit of EMF?
Perhaps I 'm fully wrong, but I try to give solutions to understood
better your idea.
Angelo