/**
  *
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  *
  * @generated NOT
  */
 public EList<String> getAllRequiredPlugins() {
   Collection<String> rv = new LinkedHashSet<String>(getRequiredPlugins());
   if (getEditorGen() != null) {
     final GenModel genModel = getEditorGen().getDomainGenModel();
     if (genModel != null) {
       rv.add(genModel.getModelPluginID());
       rv.add(genModel.getEditPluginID());
       for (Iterator<GenPackage> it = genModel.getAllUsedGenPackagesWithClassifiers().iterator();
           it.hasNext(); ) {
         GenModel nextGenModel = it.next().getGenModel();
         if (nextGenModel.hasEditSupport()) {
           rv.add(nextGenModel.getModelPluginID());
           rv.add(nextGenModel.getEditPluginID());
         }
       }
     }
     rv.addAll(getExpressionsRequiredPluginIDs());
     rv.addAll(getValidationRequiredPluginIDs());
     rv.addAll(getMetricsRequiredPluginIDs());
     rv.addAll(getViewmapRequiredPluginIDs());
   }
   for (Iterator<String> it = rv.iterator(); it.hasNext(); ) {
     if (GenCommonBaseImpl.isEmpty(it.next())) {
       it.remove();
     }
   }
   return new BasicEList<String>(rv);
 }
 public String getActivatorClassName() {
   String value = getActivatorClassNameGen();
   if (GenCommonBaseImpl.isEmpty(value)) {
     // FIXME is it really required to have domainPackageCapName there?
     value = ((GenDiagramImpl) getDiagram()).getDomainPackageCapName() + "DiagramEditorPlugin";
   }
   return value;
 }
 /** @generated NOT */
 public String getName() {
   String result = getNameGen();
   if (GenCommonBaseImpl.isEmpty(result)) {
     GenEditorGenerator generator = getEditorGen();
     if (generator != null) {
       String prefix = "Diagram Editor";
       GenModel genModel = generator.getDomainGenModel();
       if (genModel != null) {
         prefix = genModel.getModelName();
       }
       result = prefix + " Plugin";
     }
   }
   return result;
 }
 public String getID() {
   String value = getIDGen();
   if (GenCommonBaseImpl.isEmpty(value)) {
     String prefix = "design"; // $NON-NLS-1$
     if (getEditorGen().getDomainGenModel() != null) {
       prefix = getEditorGen().getDomainGenModel().getModelPluginID();
     }
     if (prefix == null) {
       prefix = ""; // $NON-NLS-1$
     } else if (prefix.endsWith(".model")) { // $NON-NLS-1$
       prefix = prefix.substring(0, prefix.length() - ".model".length()); // $NON-NLS-1$
     }
     return prefix + ".diagram"; // $NON-NLS-1$
   }
   return value;
 }