/**
  * @see
  *     org.eclipse.uml2.uml.util.UMLDerivedUnionAdapter#notifyModelChanged(org.eclipse.emf.common.notify.Notification,
  *     org.eclipse.emf.ecore.EClass)
  * @param notification
  * @param eClass
  */
 @Override
 protected void notifyModelChanged(Notification notification, EClass eClass) {
   super.notifyModelChanged(notification, eClass);
   switch (notification.getFeatureID(org.eclipse.uml2.uml.Model.class)) {
     case UMLPackage.PACKAGE__PACKAGED_ELEMENT:
       notifyChanged(notification, eClass, UMLPackage.Literals.PACKAGE__NESTED_PACKAGE);
       notifyChanged(notification, eClass, UMLPackage.Literals.PACKAGE__OWNED_STEREOTYPE);
       notifyChanged(notification, eClass, UMLPackage.Literals.PACKAGE__OWNED_TYPE);
       break;
     default:
       break;
   }
 }
  /**
   * @see
   *     org.eclipse.uml2.uml.util.UMLDerivedUnionAdapter#notifyUseCaseChanged(org.eclipse.emf.common.notify.Notification,
   *     org.eclipse.emf.ecore.EClass)
   * @param notification
   * @param eClass
   */
  @Override
  protected void notifyUseCaseChanged(Notification notification, EClass eClass) {
    super.notifyUseCaseChanged(notification, eClass);
    switch (notification.getFeatureID(org.eclipse.uml2.uml.UseCase.class)) {
      case UMLPackage.CLASSIFIER__GENERALIZATION:
        notifyChanged(notification, eClass, UMLPackage.Literals.CLASS__SUPER_CLASS);
        break;
      case UMLPackage.CLASSIFIER__GENERAL:
        notifyChanged(notification, eClass, UMLPackage.Literals.CLASSIFIER__GENERALIZATION);

        break;
      default:
        break;
    }
  }
 /**
  * @see
  *     org.eclipse.uml2.uml.util.UMLDerivedUnionAdapter#notifyActivityChanged(org.eclipse.emf.common.notify.Notification,
  *     org.eclipse.emf.ecore.EClass)
  * @param notification
  * @param eClass
  */
 @Override
 protected void notifyActivityChanged(Notification notification, EClass eClass) {
   super.notifyActivityChanged(notification, eClass);
   switch (notification.getFeatureID(org.eclipse.uml2.uml.Activity.class)) {
     case UMLPackage.CLASSIFIER__GENERALIZATION:
       notifyChanged(notification, eClass, UMLPackage.Literals.CLASS__SUPER_CLASS);
       break;
     case UMLPackage.CLASSIFIER__GENERAL:
       notifyChanged(notification, eClass, UMLPackage.Literals.CLASSIFIER__GENERALIZATION);
       break;
     case UMLPackage.STRUCTURED_CLASSIFIER__OWNED_ATTRIBUTE:
       notifyChanged(
           notification, eClass, UMLPackage.Literals.ENCAPSULATED_CLASSIFIER__OWNED_PORT);
       break;
     default:
       break;
   }
 }