public void notifyChanged(
     INodeNotifier notifier,
     int eventType,
     Object changedFeature,
     Object oldValue,
     Object newValue,
     int pos) {
   if (resource.isProcessEvents()) {
     try {
       resource.setProcessEvents(false);
       if (newValue instanceof Text) {
         changedFeature = newValue;
         newValue = ((Text) newValue).getData();
       }
       if (changedFeature instanceof Text) {
         if (null == newValue) {
           ExtendedEcoreUtil.eUnsetOrRemove(modelObject, feature, oldValue);
         } else {
           ExtendedEcoreUtil.eSetOrAdd(modelObject, feature, newValue.toString().trim());
         }
       }
     } finally {
       resource.setProcessEvents(true);
     }
   }
 }