/** @generated */
 public void init(IWorkbench workbench, IStructuredSelection selection) {
   this.workbench = workbench;
   this.selection = selection;
   setWindowTitle(Messages.AffixednodeCreationWizardTitle);
   setDefaultPageImageDescriptor(
       AffixednodeDiagramEditorPlugin.getBundledImageDescriptor(
           "icons/wizban/NewAffixedNodeWizard.gif")); //$NON-NLS-1$
   setNeedsProgressMonitor(true);
 }
  /** @generated */
  public boolean performFinish() {
    IRunnableWithProgress op =
        new WorkspaceModifyOperation(null) {

          protected void execute(IProgressMonitor monitor)
              throws CoreException, InterruptedException {
            diagram =
                AffixednodeDiagramEditorUtil.createDiagram(
                    diagramModelFilePage.getURI(), domainModelFilePage.getURI(), monitor);
            if (isOpenNewlyCreatedDiagramEditor() && diagram != null) {
              try {
                AffixednodeDiagramEditorUtil.openDiagram(diagram);
              } catch (PartInitException e) {
                ErrorDialog.openError(
                    getContainer().getShell(),
                    Messages.AffixednodeCreationWizardOpenEditorError,
                    null,
                    e.getStatus());
              }
            }
          }
        };
    try {
      getContainer().run(false, true, op);
    } catch (InterruptedException e) {
      return false;
    } catch (InvocationTargetException e) {
      if (e.getTargetException() instanceof CoreException) {
        ErrorDialog.openError(
            getContainer().getShell(),
            Messages.AffixednodeCreationWizardCreationError,
            null,
            ((CoreException) e.getTargetException()).getStatus());
      } else {
        AffixednodeDiagramEditorPlugin.getInstance()
            .logError("Error creating diagram", e.getTargetException()); // $NON-NLS-1$
      }
      return false;
    }
    return diagram != null;
  }