Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.dawn.graphiti/src/org/eclipse/emf/cdo/dawn/graphiti/wizards/DawnBasicGraphitiWizard.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.dawn.graphiti/src/org/eclipse/emf/cdo/dawn/graphiti/wizards/DawnBasicGraphitiWizard.java440
1 files changed, 220 insertions, 220 deletions
diff --git a/plugins/org.eclipse.emf.cdo.dawn.graphiti/src/org/eclipse/emf/cdo/dawn/graphiti/wizards/DawnBasicGraphitiWizard.java b/plugins/org.eclipse.emf.cdo.dawn.graphiti/src/org/eclipse/emf/cdo/dawn/graphiti/wizards/DawnBasicGraphitiWizard.java
index 8554c27864..1407f3cb33 100644
--- a/plugins/org.eclipse.emf.cdo.dawn.graphiti/src/org/eclipse/emf/cdo/dawn/graphiti/wizards/DawnBasicGraphitiWizard.java
+++ b/plugins/org.eclipse.emf.cdo.dawn.graphiti/src/org/eclipse/emf/cdo/dawn/graphiti/wizards/DawnBasicGraphitiWizard.java
@@ -1,220 +1,220 @@
-/*
- * Copyright (c) 2004 - 2012 Eike Stepper (Berlin, Germany) and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Martin Fluegge - initial API and implementation
- */
-package org.eclipse.emf.cdo.dawn.graphiti.wizards;
-
-import org.eclipse.emf.cdo.dawn.graphiti.DawnGraphitiUIPlugin;
-import org.eclipse.emf.cdo.dawn.graphiti.editors.DawnGraphitiDiagramEditor;
-import org.eclipse.emf.cdo.dawn.graphiti.editors.DawnGraphitiEditorInput;
-import org.eclipse.emf.cdo.dawn.graphiti.util.DawnGraphitiUtil;
-import org.eclipse.emf.cdo.dawn.preferences.PreferenceConstants;
-import org.eclipse.emf.cdo.dawn.ui.composites.CDOResourceNodeChooserComposite.ResourceChooserValidator;
-import org.eclipse.emf.cdo.dawn.ui.wizards.DawnCreateNewDiagramResourceWizardPage;
-import org.eclipse.emf.cdo.dawn.ui.wizards.DawnCreateNewResourceWizardPage;
-import org.eclipse.emf.cdo.dawn.util.connection.CDOConnectionUtil;
-import org.eclipse.emf.cdo.session.CDOSession;
-import org.eclipse.emf.cdo.view.CDOView;
-
-import org.eclipse.emf.common.command.CommandStack;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.transaction.RecordingCommand;
-import org.eclipse.emf.transaction.TransactionalEditingDomain;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.graphiti.mm.pictograms.Diagram;
-import org.eclipse.graphiti.services.Graphiti;
-import org.eclipse.graphiti.ui.editor.DiagramEditorInput;
-import org.eclipse.graphiti.ui.services.GraphitiUi;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.ui.INewWizard;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-
-import java.io.IOException;
-
-/**
- * @author Martin Fluegge
- */
-public class DawnBasicGraphitiWizard extends Wizard implements INewWizard
-{
- protected CDOView view;
-
- protected DawnCreateNewDiagramResourceWizardPage dawnDiagramModelFilePage;
-
- protected DawnCreateNewResourceWizardPage dawnDomainModelFilePage;
-
- protected String diagramExtension = "model_graphiti";
-
- protected String modelExtension = "model";
-
- public DawnBasicGraphitiWizard()
- {
- super();
- CDOConnectionUtil.instance.init(PreferenceConstants.getRepositoryName(), PreferenceConstants.getProtocol(),
- PreferenceConstants.getServerName());
- CDOSession session = CDOConnectionUtil.instance.openSession();
- view = CDOConnectionUtil.instance.openView(session);
- }
-
- public DawnBasicGraphitiWizard(String modelExtension, String diagramExtension)
- {
- this();
- this.diagramExtension = diagramExtension;
- this.modelExtension = modelExtension;
- }
-
- public void init(IWorkbench workbench, IStructuredSelection selection)
- {
- }
-
- @Override
- public void addPages()
- {
- dawnDiagramModelFilePage = new DawnCreateNewDiagramResourceWizardPage(diagramExtension, false, view);
- dawnDiagramModelFilePage.setTitle("");
- dawnDiagramModelFilePage.setDescription("");
- dawnDiagramModelFilePage.setCreateAutomaticResourceName(true);
- addPage(dawnDiagramModelFilePage);
-
- dawnDomainModelFilePage = new DawnCreateNewResourceWizardPage(modelExtension, true, view)
- {
- @Override
- public void setVisible(boolean visible)
- {
- if (visible)
- {
- URI uri = dawnDiagramModelFilePage.getURI();
- String fileName = uri.lastSegment();
- fileName = fileName.substring(0, fileName.length() - ("." + diagramExtension).length()); //$NON-NLS-1$
- fileName += ".acore";
- dawnDomainModelFilePage.setResourceNamePrefix(fileName);
- dawnDomainModelFilePage.setResourcePath(dawnDiagramModelFilePage.getResourcePath());
- }
- super.setVisible(visible);
- }
- };
- dawnDomainModelFilePage.setTitle("");
- dawnDomainModelFilePage.setDescription("");
-
- // allows to connect to an existing resource
- dawnDomainModelFilePage.setResourceValidationType(ResourceChooserValidator.VALIDATION_WARN);
- addPage(dawnDomainModelFilePage);
- }
-
- @Override
- public boolean performFinish()
- {
- String diagramTypeId = geTypeId();
-
- URI diagramResourceURI = dawnDiagramModelFilePage.getURI();
- URI domainModelResourceURI = dawnDomainModelFilePage.getURI();
-
- Diagram diagram = Graphiti.getPeCreateService()
- .createDiagram(diagramTypeId, diagramResourceURI.lastSegment(), true);
-
- String editorID = DawnGraphitiDiagramEditor.ID;
-
- TransactionalEditingDomain editingDomain = createEditingDomain(diagramResourceURI, diagram);
-
- createModelResource(domainModelResourceURI, editingDomain.getResourceSet());
-
- Resource diagramResource = createDiagramResource(diagramResourceURI, diagram, editingDomain);
-
- String providerId = GraphitiUi.getExtensionManager().getDiagramTypeProviderId(diagram.getDiagramTypeId());
- DiagramEditorInput editorInput = new DawnGraphitiEditorInput(EcoreUtil.getURI(diagram), providerId, diagramResource);
-
- try
- {
- PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().openEditor(editorInput, editorID);
- }
- catch (PartInitException e)
- {
- String error = "Error opening diagram";
- IStatus status = new Status(IStatus.ERROR, DawnGraphitiUIPlugin.ID, error, e);
- ErrorDialog.openError(getShell(), "Error", null, status);
- return false;
- }
-
- return true;
- }
-
- protected String geTypeId()
- {
- return modelExtension;
- }
-
- private Resource createModelResource(URI uri, ResourceSet resourceSet)
- {
- Resource resource = null;
-
- // try
- // {
- // resource = resourceSet.getResource(uri, true);
- // }
- // catch (Exception ex)
- // {
- // // ignore
- // }
- //
- // if (resource == null)
- // {
- resource = resourceSet.createResource(uri);
- // }
-
- return resource;
- }
-
- private TransactionalEditingDomain createEditingDomain(URI diagramResourceURI, final Diagram diagram)
- {
- final TransactionalEditingDomain editingDomain = DawnGraphitiUtil.createResourceSetAndEditingDomain();
-
- return editingDomain;
- }
-
- private Resource createDiagramResource(URI diagramResourceURI, final Diagram diagram,
- final TransactionalEditingDomain editingDomain)
- {
- final ResourceSet resourceSet = editingDomain.getResourceSet();
- final Resource resource = createModelResource(diagramResourceURI, resourceSet);
-
- final CommandStack commandStack = editingDomain.getCommandStack();
- commandStack.execute(new RecordingCommand(editingDomain)
- {
- @Override
- protected void doExecute()
- {
- resource.getContents().add(diagram);
- }
- });
-
- try
- {
- resource.save(null);
- }
- catch (IOException ex)
- {
- throw new RuntimeException(ex);
- }
- return resource;
- }
-
- @Override
- public void dispose()
- {
- view.close();
- }
-}
+/*
+ * Copyright (c) 2004 - 2012 Eike Stepper (Berlin, Germany) and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Martin Fluegge - initial API and implementation
+ */
+package org.eclipse.emf.cdo.dawn.graphiti.wizards;
+
+import org.eclipse.emf.cdo.dawn.graphiti.DawnGraphitiUIPlugin;
+import org.eclipse.emf.cdo.dawn.graphiti.editors.DawnGraphitiDiagramEditor;
+import org.eclipse.emf.cdo.dawn.graphiti.editors.DawnGraphitiEditorInput;
+import org.eclipse.emf.cdo.dawn.graphiti.util.DawnGraphitiUtil;
+import org.eclipse.emf.cdo.dawn.preferences.PreferenceConstants;
+import org.eclipse.emf.cdo.dawn.ui.composites.CDOResourceNodeChooserComposite.ResourceChooserValidator;
+import org.eclipse.emf.cdo.dawn.ui.wizards.DawnCreateNewDiagramResourceWizardPage;
+import org.eclipse.emf.cdo.dawn.ui.wizards.DawnCreateNewResourceWizardPage;
+import org.eclipse.emf.cdo.dawn.util.connection.CDOConnectionUtil;
+import org.eclipse.emf.cdo.session.CDOSession;
+import org.eclipse.emf.cdo.view.CDOView;
+
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.graphiti.mm.pictograms.Diagram;
+import org.eclipse.graphiti.services.Graphiti;
+import org.eclipse.graphiti.ui.editor.DiagramEditorInput;
+import org.eclipse.graphiti.ui.services.GraphitiUi;
+import org.eclipse.jface.dialogs.ErrorDialog;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+
+import java.io.IOException;
+
+/**
+ * @author Martin Fluegge
+ */
+public class DawnBasicGraphitiWizard extends Wizard implements INewWizard
+{
+ protected CDOView view;
+
+ protected DawnCreateNewDiagramResourceWizardPage dawnDiagramModelFilePage;
+
+ protected DawnCreateNewResourceWizardPage dawnDomainModelFilePage;
+
+ protected String diagramExtension = "model_graphiti";
+
+ protected String modelExtension = "model";
+
+ public DawnBasicGraphitiWizard()
+ {
+ super();
+ CDOConnectionUtil.instance.init(PreferenceConstants.getRepositoryName(), PreferenceConstants.getProtocol(),
+ PreferenceConstants.getServerName());
+ CDOSession session = CDOConnectionUtil.instance.openSession();
+ view = CDOConnectionUtil.instance.openView(session);
+ }
+
+ public DawnBasicGraphitiWizard(String modelExtension, String diagramExtension)
+ {
+ this();
+ this.diagramExtension = diagramExtension;
+ this.modelExtension = modelExtension;
+ }
+
+ public void init(IWorkbench workbench, IStructuredSelection selection)
+ {
+ }
+
+ @Override
+ public void addPages()
+ {
+ dawnDiagramModelFilePage = new DawnCreateNewDiagramResourceWizardPage(diagramExtension, false, view);
+ dawnDiagramModelFilePage.setTitle("");
+ dawnDiagramModelFilePage.setDescription("");
+ dawnDiagramModelFilePage.setCreateAutomaticResourceName(true);
+ addPage(dawnDiagramModelFilePage);
+
+ dawnDomainModelFilePage = new DawnCreateNewResourceWizardPage(modelExtension, true, view)
+ {
+ @Override
+ public void setVisible(boolean visible)
+ {
+ if (visible)
+ {
+ URI uri = dawnDiagramModelFilePage.getURI();
+ String fileName = uri.lastSegment();
+ fileName = fileName.substring(0, fileName.length() - ("." + diagramExtension).length()); //$NON-NLS-1$
+ fileName += ".acore";
+ dawnDomainModelFilePage.setResourceNamePrefix(fileName);
+ dawnDomainModelFilePage.setResourcePath(dawnDiagramModelFilePage.getResourcePath());
+ }
+ super.setVisible(visible);
+ }
+ };
+ dawnDomainModelFilePage.setTitle("");
+ dawnDomainModelFilePage.setDescription("");
+
+ // allows to connect to an existing resource
+ dawnDomainModelFilePage.setResourceValidationType(ResourceChooserValidator.VALIDATION_WARN);
+ addPage(dawnDomainModelFilePage);
+ }
+
+ @Override
+ public boolean performFinish()
+ {
+ String diagramTypeId = geTypeId();
+
+ URI diagramResourceURI = dawnDiagramModelFilePage.getURI();
+ URI domainModelResourceURI = dawnDomainModelFilePage.getURI();
+
+ Diagram diagram = Graphiti.getPeCreateService()
+ .createDiagram(diagramTypeId, diagramResourceURI.lastSegment(), true);
+
+ String editorID = DawnGraphitiDiagramEditor.ID;
+
+ TransactionalEditingDomain editingDomain = createEditingDomain(diagramResourceURI, diagram);
+
+ createModelResource(domainModelResourceURI, editingDomain.getResourceSet());
+
+ Resource diagramResource = createDiagramResource(diagramResourceURI, diagram, editingDomain);
+
+ String providerId = GraphitiUi.getExtensionManager().getDiagramTypeProviderId(diagram.getDiagramTypeId());
+ DiagramEditorInput editorInput = new DawnGraphitiEditorInput(EcoreUtil.getURI(diagram), providerId, diagramResource);
+
+ try
+ {
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().openEditor(editorInput, editorID);
+ }
+ catch (PartInitException e)
+ {
+ String error = "Error opening diagram";
+ IStatus status = new Status(IStatus.ERROR, DawnGraphitiUIPlugin.ID, error, e);
+ ErrorDialog.openError(getShell(), "Error", null, status);
+ return false;
+ }
+
+ return true;
+ }
+
+ protected String geTypeId()
+ {
+ return modelExtension;
+ }
+
+ private Resource createModelResource(URI uri, ResourceSet resourceSet)
+ {
+ Resource resource = null;
+
+ // try
+ // {
+ // resource = resourceSet.getResource(uri, true);
+ // }
+ // catch (Exception ex)
+ // {
+ // // ignore
+ // }
+ //
+ // if (resource == null)
+ // {
+ resource = resourceSet.createResource(uri);
+ // }
+
+ return resource;
+ }
+
+ private TransactionalEditingDomain createEditingDomain(URI diagramResourceURI, final Diagram diagram)
+ {
+ final TransactionalEditingDomain editingDomain = DawnGraphitiUtil.createResourceSetAndEditingDomain();
+
+ return editingDomain;
+ }
+
+ private Resource createDiagramResource(URI diagramResourceURI, final Diagram diagram,
+ final TransactionalEditingDomain editingDomain)
+ {
+ final ResourceSet resourceSet = editingDomain.getResourceSet();
+ final Resource resource = createModelResource(diagramResourceURI, resourceSet);
+
+ final CommandStack commandStack = editingDomain.getCommandStack();
+ commandStack.execute(new RecordingCommand(editingDomain)
+ {
+ @Override
+ protected void doExecute()
+ {
+ resource.getContents().add(diagram);
+ }
+ });
+
+ try
+ {
+ resource.save(null);
+ }
+ catch (IOException ex)
+ {
+ throw new RuntimeException(ex);
+ }
+ return resource;
+ }
+
+ @Override
+ public void dispose()
+ {
+ view.close();
+ }
+}

Back to the top