コード例 #1
0
 /** @generated */
 public void run(IAction action) {
   TransactionalEditingDomain editingDomain =
       GMFEditingDomainFactory.INSTANCE.createEditingDomain();
   ResourceSet resourceSet = editingDomain.getResourceSet();
   EObject diagramRoot = null;
   try {
     Resource resource = resourceSet.getResource(domainModelURI, true);
     diagramRoot = (EObject) resource.getContents().get(0);
   } catch (WrappedException ex) {
     OwlsDiagramEditorPlugin.getInstance()
         .logError("Unable to load resource: " + domainModelURI, ex); // $NON-NLS-1$
   }
   if (diagramRoot == null) {
     MessageDialog.openError(
         getShell(),
         Messages.OwlsInitDiagramFileAction_InitDiagramFileResourceErrorDialogTitle,
         Messages.OwlsInitDiagramFileAction_InitDiagramFileResourceErrorDialogMessage);
     return;
   }
   Wizard wizard = new OwlsNewDiagramFileWizard(domainModelURI, diagramRoot, editingDomain);
   wizard.setWindowTitle(
       NLS.bind(
           Messages.OwlsInitDiagramFileAction_InitDiagramFileWizardTitle,
           OwlsCompositeProcessEditPart.MODEL_ID));
   OwlsDiagramEditorUtil.runWizard(getShell(), wizard, "InitDiagramFile"); // $NON-NLS-1$
 }
コード例 #2
0
 /** @generated */
 public static int getVisualID(String type) {
   try {
     return Integer.parseInt(type);
   } catch (NumberFormatException e) {
     if (Boolean.TRUE.toString().equalsIgnoreCase(Platform.getDebugOption(DEBUG_KEY))) {
       OwlsDiagramEditorPlugin.getInstance()
           .logError("Unable to parse view type as a visualID number: " + type);
     }
   }
   return -1;
 }
コード例 #3
0
/**
 * This registry is used to determine which type of visual object should be created for the
 * corresponding Diagram, Node, ChildNode or Link represented by a domain model object.
 *
 * @generated
 */
public class OwlsVisualIDRegistry {

  /** @generated */
  private static final String DEBUG_KEY =
      OwlsDiagramEditorPlugin.getInstance().getBundle().getSymbolicName()
          + "/debug/visualID"; //$NON-NLS-1$

  /** @generated */
  public static int getVisualID(View view) {
    if (view instanceof Diagram) {
      if (OwlsCompositeProcessEditPart.MODEL_ID.equals(view.getType())) {
        return OwlsCompositeProcessEditPart.VISUAL_ID;
      } else {
        return -1;
      }
    }
    return owls.diagram.part.OwlsVisualIDRegistry.getVisualID(view.getType());
  }

  /** @generated */
  public static String getModelID(View view) {
    View diagram = view.getDiagram();
    while (view != diagram) {
      EAnnotation annotation = view.getEAnnotation("Shortcut"); // $NON-NLS-1$
      if (annotation != null) {
        return (String) annotation.getDetails().get("modelID"); // $NON-NLS-1$
      }
      view = (View) view.eContainer();
    }
    return diagram != null ? diagram.getType() : null;
  }

  /** @generated */
  public static int getVisualID(String type) {
    try {
      return Integer.parseInt(type);
    } catch (NumberFormatException e) {
      if (Boolean.TRUE.toString().equalsIgnoreCase(Platform.getDebugOption(DEBUG_KEY))) {
        OwlsDiagramEditorPlugin.getInstance()
            .logError("Unable to parse view type as a visualID number: " + type);
      }
    }
    return -1;
  }

  /** @generated */
  public static String getType(int visualID) {
    return String.valueOf(visualID);
  }

  /** @generated */
  public static int getDiagramVisualID(EObject domainElement) {
    if (domainElement == null) {
      return -1;
    }
    if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())
        && isDiagram((OwlsCompositeProcess) domainElement)) {
      return OwlsCompositeProcessEditPart.VISUAL_ID;
    }
    return -1;
  }

  /** @generated */
  public static int getNodeVisualID(View containerView, EObject domainElement) {
    if (domainElement == null) {
      return -1;
    }
    String containerModelID = owls.diagram.part.OwlsVisualIDRegistry.getModelID(containerView);
    if (!OwlsCompositeProcessEditPart.MODEL_ID.equals(containerModelID)) {
      return -1;
    }
    int containerVisualID;
    if (OwlsCompositeProcessEditPart.MODEL_ID.equals(containerModelID)) {
      containerVisualID = owls.diagram.part.OwlsVisualIDRegistry.getVisualID(containerView);
    } else {
      if (containerView instanceof Diagram) {
        containerVisualID = OwlsCompositeProcessEditPart.VISUAL_ID;
      } else {
        return -1;
      }
    }
    switch (containerVisualID) {
      case OwlsSequenceEditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsAtomicProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAtomicProcessEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsCompositeProcess2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSplit().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSplit2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsAnyOrder().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAnyOrder2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsInputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsInputClientMessageEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsOutputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsOutputClientMessageEditPart.VISUAL_ID;
        }
        break;
      case OwlsSplitEditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsAtomicProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAtomicProcessEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsCompositeProcess2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSequence().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSequence2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsAnyOrder().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAnyOrder2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsInputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsInputClientMessageEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsOutputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsOutputClientMessageEditPart.VISUAL_ID;
        }
        break;
      case OwlsAnyOrderEditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsAtomicProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAtomicProcessEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsCompositeProcess2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSplit().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSplit2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSequence().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSequence2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsInputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsInputClientMessageEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsOutputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsOutputClientMessageEditPart.VISUAL_ID;
        }
        break;
      case OwlsSplit2EditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsAtomicProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAtomicProcessEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsCompositeProcess2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSequence().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSequence2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsAnyOrder().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAnyOrder2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsInputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsInputClientMessageEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsOutputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsOutputClientMessageEditPart.VISUAL_ID;
        }
        break;
      case OwlsSequence2EditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsAtomicProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAtomicProcessEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsCompositeProcess2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSplit().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSplit2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsAnyOrder().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAnyOrder2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsInputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsInputClientMessageEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsOutputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsOutputClientMessageEditPart.VISUAL_ID;
        }
        break;
      case OwlsAnyOrder2EditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsAtomicProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAtomicProcessEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsCompositeProcess().isSuperTypeOf(domainElement.eClass())) {
          return OwlsCompositeProcess2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSplit().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSplit2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSequence().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSequence2EditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsInputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsInputClientMessageEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE
            .getOwlsOutputClientMessage()
            .isSuperTypeOf(domainElement.eClass())) {
          return OwlsOutputClientMessageEditPart.VISUAL_ID;
        }
        break;
      case OwlsCompositeProcessEditPart.VISUAL_ID:
        if (OwlsPackage.eINSTANCE.getOwlsSequence().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSequenceEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsSplit().isSuperTypeOf(domainElement.eClass())) {
          return OwlsSplitEditPart.VISUAL_ID;
        }
        if (OwlsPackage.eINSTANCE.getOwlsAnyOrder().isSuperTypeOf(domainElement.eClass())) {
          return OwlsAnyOrderEditPart.VISUAL_ID;
        }
        break;
    }
    return -1;
  }

  /** @generated */
  public static boolean canCreateNode(View containerView, int nodeVisualID) {
    String containerModelID = owls.diagram.part.OwlsVisualIDRegistry.getModelID(containerView);
    if (!OwlsCompositeProcessEditPart.MODEL_ID.equals(containerModelID)) {
      return false;
    }
    int containerVisualID;
    if (OwlsCompositeProcessEditPart.MODEL_ID.equals(containerModelID)) {
      containerVisualID = owls.diagram.part.OwlsVisualIDRegistry.getVisualID(containerView);
    } else {
      if (containerView instanceof Diagram) {
        containerVisualID = OwlsCompositeProcessEditPart.VISUAL_ID;
      } else {
        return false;
      }
    }
    switch (containerVisualID) {
      case OwlsSequenceEditPart.VISUAL_ID:
        if (OwlsAtomicProcessEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsCompositeProcess2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSplit2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsAnyOrder2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsInputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsOutputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsSplitEditPart.VISUAL_ID:
        if (OwlsAtomicProcessEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsCompositeProcess2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSequence2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsAnyOrder2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsInputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsOutputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsAnyOrderEditPart.VISUAL_ID:
        if (OwlsAtomicProcessEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsCompositeProcess2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSplit2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSequence2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsInputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsOutputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsAtomicProcessEditPart.VISUAL_ID:
        if (OwlsAtomicProcessIDEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsCompositeProcess2EditPart.VISUAL_ID:
        if (OwlsCompositeProcessIDEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsSplit2EditPart.VISUAL_ID:
        if (OwlsAtomicProcessEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsCompositeProcess2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSequence2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsAnyOrder2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsInputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsOutputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsSequence2EditPart.VISUAL_ID:
        if (OwlsAtomicProcessEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsCompositeProcess2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSplit2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsAnyOrder2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsInputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsOutputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsAnyOrder2EditPart.VISUAL_ID:
        if (OwlsAtomicProcessEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsCompositeProcess2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSplit2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSequence2EditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsInputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsOutputClientMessageEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
      case OwlsCompositeProcessEditPart.VISUAL_ID:
        if (OwlsSequenceEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsSplitEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        if (OwlsAnyOrderEditPart.VISUAL_ID == nodeVisualID) {
          return true;
        }
        break;
    }
    return false;
  }

  /** @generated */
  public static int getLinkWithClassVisualID(EObject domainElement) {
    if (domainElement == null) {
      return -1;
    }
    if (OwlsPackage.eINSTANCE.getOwlsAssign().isSuperTypeOf(domainElement.eClass())) {
      return OwlsAssignEditPart.VISUAL_ID;
    }
    if (OwlsPackage.eINSTANCE.getOwlsAssignInputClient().isSuperTypeOf(domainElement.eClass())) {
      return OwlsAssignInputClientEditPart.VISUAL_ID;
    }
    if (OwlsPackage.eINSTANCE.getOwlsAssignOutputClient().isSuperTypeOf(domainElement.eClass())) {
      return OwlsAssignOutputClientEditPart.VISUAL_ID;
    }
    return -1;
  }

  /**
   * User can change implementation of this method to handle some specific situations not covered by
   * default logic.
   *
   * @generated
   */
  private static boolean isDiagram(OwlsCompositeProcess element) {
    return true;
  }

  /** @generated */
  private static class JavaConstraints {}
}