ajout des dernières modif du TP

This commit is contained in:
Laurent Fainsin 2021-10-09 13:56:20 +02:00
parent 3ad91794fd
commit 450e7ff198
292 changed files with 8927 additions and 19380 deletions

View file

@ -1577,3 +1577,686 @@ java.lang.InterruptedException
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207) at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220) at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829) at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 13:57:43.131 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:17:45.320
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:18:25.525
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:18:59.947
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:21:02.450
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 14:21:06.114
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 14:21:08.637 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:21:43.972
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:36:10.058
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:37:09.208
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:39:50.649
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:41:04.669
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:41:59.884
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:43:25.096
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:43:48.122
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:45:07.339
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:46:01.803
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 14:46:19.808
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 14:46:25.149 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product --clean
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product --clean
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:46:52.625
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:50:09.004
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:52:56.839
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 14:53:20.011
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 14:53:30.253 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product -clean
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:54:16.388
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 14:56:03.107
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.core.jobs 4 2 2021-10-08 15:03:25.408
!MESSAGE An internal error occurred during: "Deferred Load OCL Document".
!STACK 0
java.lang.IllegalStateException
at org.eclipse.ocl.pivot.utilities.ClassUtil.nonNullState(ClassUtil.java:282)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.getPlatformPluginURI(StandaloneProjectMap.java:1629)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceDescriptor.configureResourceSetURIResourceMap(StandaloneProjectMap.java:1597)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$AbstractResourceLoadStatus.configureResourceSetURIResourceMap(StandaloneProjectMap.java:845)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap$LoadFirstStrategy.useGeneratedResource(StandaloneProjectMap.java:734)
at org.eclipse.ocl.pivot.internal.resource.StandaloneProjectMap.useGeneratedResource(StandaloneProjectMap.java:3128)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.addExternal2AS(AbstractEnvironmentFactory.java:202)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.<init>(Ecore2AS.java:243)
at org.eclipse.ocl.pivot.internal.ecore.es2as.Ecore2AS.getAdapter(Ecore2AS.java:90)
at org.eclipse.ocl.pivot.internal.ecore.EcoreASResourceFactory.importFromResource(EcoreASResourceFactory.java:90)
at org.eclipse.ocl.pivot.utilities.AbstractEnvironmentFactory.loadResource(AbstractEnvironmentFactory.java:831)
at org.eclipse.ocl.xtext.completeocl.utilities.CompleteOCLLoader.loadMetamodels(CompleteOCLLoader.java:100)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.processResources(LoadCompleteOCLResourceHandler.java:178)
at org.eclipse.ocl.xtext.completeocl.ui.commands.LoadCompleteOCLResourceHandler$ResourceDialog$DeferredLoadDocumentJob.run(LoadCompleteOCLResourceHandler.java:151)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 15:20:12.607
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 15:20:14.552 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product
Command-line arguments: -data file:/home/lfainsin/miniproj_idm/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product -clean
!ENTRY org.eclipse.ui.navigator 4 0 2021-10-08 15:26:02.671
!MESSAGE Cannot find navigator content extension (using triggerPoints) for object "<null>" parent path: "P/fr.n7.petriNet.exemple". Check that you have an expression for this object in a navigatorContent triggerPoints or enablement.
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 15:37:39.853
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 15:37:41.710 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product
Command-line arguments: -data file:/home/lfainsin/miniproj_idm/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product -clean
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 15:39:37.481
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)
!SESSION 2021-10-08 15:39:38.875 -----------------------------------------------
eclipse.buildId=4.17.0.I20200902-1800
java.version=11.0.11
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=fr_FR
Framework arguments: -product org.eclipse.epp.package.modeling.product
Command-line arguments: -data file:/home/lfainsin/miniproj_idm/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product -clean
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-08 15:46:29.199
!MESSAGE InterruptedException
!STACK 0
java.lang.InterruptedException
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1343)
at java.base/java.util.concurrent.Semaphore.acquire(Semaphore.java:318)
at org.eclipse.net4j.util.lifecycle.Lifecycle.lock(Lifecycle.java:312)
at org.eclipse.net4j.util.lifecycle.Lifecycle.internalDeactivate(Lifecycle.java:118)
at org.eclipse.net4j.util.lifecycle.ShareableLifecycle.internalDeactivate(ShareableLifecycle.java:52)
at org.eclipse.net4j.util.lifecycle.Lifecycle.deactivate(Lifecycle.java:170)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:235)
at org.eclipse.net4j.util.lifecycle.LifecycleUtil.deactivate(LifecycleUtil.java:225)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM.disposeManagers(OM.java:83)
at org.eclipse.emf.cdo.internal.explorer.bundle.OM$Activator.doStop(OM.java:136)
at org.eclipse.net4j.util.om.OSGiActivator.stop(OSGiActivator.java:92)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:871)
at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.internal.framework.BundleContextImpl.stop(BundleContextImpl.java:863)
at org.eclipse.osgi.internal.framework.EquinoxBundle.stopWorker0(EquinoxBundle.java:1025)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.stopWorker(EquinoxBundle.java:370)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1886)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1761)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:275)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:202)
at org.eclipse.osgi.container.Module.doStop(Module.java:660)
at org.eclipse.osgi.container.Module.stop(Module.java:521)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:207)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:220)
at java.base/java.lang.Thread.run(Thread.java:829)

View file

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:simplepdl="http://simplepdl">
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.3" linksToSuccessors="//@processElements.2" name="a1"/>
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.2" linksToSuccessors="//@processElements.3" name="a2"/>
<processElements xsi:type="simplepdl:WorkSequence" predecessor="//@processElements.0" successor="//@processElements.1"/>
<processElements xsi:type="simplepdl:WorkSequence" linkType="finishToFinish" predecessor="//@processElements.1" successor="//@processElements.0"/>
<processElements xsi:type="simplepdl:Resource" quantity="10" name="Crayons"/>
</simplepdl:Process>

View file

@ -0,0 +1,85 @@
package simplepdl.manip;
import java.io.IOException;
import java.util.Collections;
import java.util.Map;
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.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
import simplepdl.Process;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
public class SimplePDLCreator {
public static void main(String[] args) {
// Charger le package SimplePDL afin de l'enregistrer dans le registre d'Eclipse.
SimplepdlPackage packageInstance = SimplepdlPackage.eINSTANCE;
// Enregistrer l'extension ".xmi" comme devant être ouverte à
// l'aide d'un objet "XMIResourceFactoryImpl"
Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE;
Map<String, Object> m = reg.getExtensionToFactoryMap();
m.put("xmi", new XMIResourceFactoryImpl());
// Créer un objet resourceSetImpl qui contiendra une ressource EMF (le modèle)
ResourceSet resSet = new ResourceSetImpl();
// Définir la ressource (le modèle)
URI modelURI = URI.createURI("models/SimplePDLCreator_Created_Process.xmi");
Resource resource = resSet.createResource(modelURI);
// La fabrique pour fabriquer les éléments de SimplePDL
SimplepdlFactory myFactory = SimplepdlFactory.eINSTANCE;
// Créer un élément Process
Process process = myFactory.createProcess();
process.setName("Mon premier processus");
// Ajouter le Process dans le modèle
resource.getContents().add(process);
// Ajouter deux WorkDefinitions
WorkDefinition wd1 = myFactory.createWorkDefinition();
wd1.setName("Ma première WorkDefinition, quelle émotion");
WorkDefinition wd2 = myFactory.createWorkDefinition();
wd2.setName("Ma deuxième WorkDefinition, toujours autant d'émotion");
process.getProcessElements().add(wd1);
process.getProcessElements().add(wd2);
// Ajouter une WorkSequence entre les deux WorkDefinitions
WorkSequence seq = myFactory.createWorkSequence();
seq.setPredecessor(wd1);
seq.setSuccessor(wd2);
seq.setLinkType(WorkSequenceType.FINISH_TO_FINISH);
process.getProcessElements().add(seq);
// Ajouter une deuxième WorkSequence entre les deux WorkDefinitions
WorkSequence seq2 = myFactory.createWorkSequence();
seq2.setPredecessor(wd1);
seq2.setSuccessor(wd2);
seq2.setLinkType(WorkSequenceType.START_TO_START);
process.getProcessElements().add(seq2);
// Sauver la ressource
try {
resource.save(Collections.EMPTY_MAP);
} catch (IOException e) {
e.printStackTrace();
}
}
}

View file

@ -1,252 +0,0 @@
/**
*/
package simplepdl;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.util.Enumerator;
/**
* <!-- begin-user-doc -->
* A representation of the literals of the enumeration '<em><b>Work Sequence Type</b></em>',
* and utility methods for working with them.
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlPackage#getWorkSequenceType()
* @model
* @generated
*/
public enum WorkSequenceType implements Enumerator {
/**
* The '<em><b>Start To Start</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #START_TO_START_VALUE
* @generated
* @ordered
*/
START_TO_START(0, "startToStart", "startToStart"),
/**
* The '<em><b>Finish To Start</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FINISH_TO_START_VALUE
* @generated
* @ordered
*/
FINISH_TO_START(1, "finishToStart", "finishToStart"),
/**
* The '<em><b>Start To Finish</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #START_TO_FINISH_VALUE
* @generated
* @ordered
*/
START_TO_FINISH(2, "startToFinish", "startToFinish"),
/**
* The '<em><b>Finish To Finish</b></em>' literal object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FINISH_TO_FINISH_VALUE
* @generated
* @ordered
*/
FINISH_TO_FINISH(3, "finishToFinish", "finishToFinish");
/**
* The '<em><b>Start To Start</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #START_TO_START
* @model name="startToStart"
* @generated
* @ordered
*/
public static final int START_TO_START_VALUE = 0;
/**
* The '<em><b>Finish To Start</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FINISH_TO_START
* @model name="finishToStart"
* @generated
* @ordered
*/
public static final int FINISH_TO_START_VALUE = 1;
/**
* The '<em><b>Start To Finish</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #START_TO_FINISH
* @model name="startToFinish"
* @generated
* @ordered
*/
public static final int START_TO_FINISH_VALUE = 2;
/**
* The '<em><b>Finish To Finish</b></em>' literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #FINISH_TO_FINISH
* @model name="finishToFinish"
* @generated
* @ordered
*/
public static final int FINISH_TO_FINISH_VALUE = 3;
/**
* An array of all the '<em><b>Work Sequence Type</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static final WorkSequenceType[] VALUES_ARRAY =
new WorkSequenceType[] {
START_TO_START,
FINISH_TO_START,
START_TO_FINISH,
FINISH_TO_FINISH,
};
/**
* A public read-only list of all the '<em><b>Work Sequence Type</b></em>' enumerators.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static final List<WorkSequenceType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
/**
* Returns the '<em><b>Work Sequence Type</b></em>' literal with the specified literal value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param literal the literal.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static WorkSequenceType get(String literal) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
WorkSequenceType result = VALUES_ARRAY[i];
if (result.toString().equals(literal)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Work Sequence Type</b></em>' literal with the specified name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param name the name.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static WorkSequenceType getByName(String name) {
for (int i = 0; i < VALUES_ARRAY.length; ++i) {
WorkSequenceType result = VALUES_ARRAY[i];
if (result.getName().equals(name)) {
return result;
}
}
return null;
}
/**
* Returns the '<em><b>Work Sequence Type</b></em>' literal with the specified integer value.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the integer value.
* @return the matching enumerator or <code>null</code>.
* @generated
*/
public static WorkSequenceType get(int value) {
switch (value) {
case START_TO_START_VALUE: return START_TO_START;
case FINISH_TO_START_VALUE: return FINISH_TO_START;
case START_TO_FINISH_VALUE: return START_TO_FINISH;
case FINISH_TO_FINISH_VALUE: return FINISH_TO_FINISH;
}
return null;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final int value;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String name;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private final String literal;
/**
* Only this class can construct instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private WorkSequenceType(int value, String name, String literal) {
this.value = value;
this.name = name;
this.literal = literal;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public int getValue() {
return value;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getLiteral() {
return literal;
}
/**
* Returns the literal value of the enumerator, which is its string representation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
return literal;
}
} //WorkSequenceType

View file

@ -1,872 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
/**
* <!-- begin-user-doc -->
* The <b>Package</b> for the model.
* It contains accessors for the meta objects to represent
* <ul>
* <li>each class,</li>
* <li>each feature of each class,</li>
* <li>each operation of each class,</li>
* <li>each enum,</li>
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlFactory
* @model kind="package"
* @generated
*/
public interface SimplepdlPackage extends EPackage {
/**
* The package name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNAME = "simplepdl";
/**
* The package namespace URI.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNS_URI = "http://simplepdl";
/**
* The package namespace name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNS_PREFIX = "simplepdl";
/**
* The singleton instance of the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
SimplepdlPackage eINSTANCE = simplepdl.impl.SimplepdlPackageImpl.init();
/**
* The meta object id for the '{@link simplepdl.impl.ProcessElementImpl <em>Process Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessElementImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcessElement()
* @generated
*/
int PROCESS_ELEMENT = 0;
/**
* The number of structural features of the '<em>Process Element</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_ELEMENT_FEATURE_COUNT = 0;
/**
* The number of operations of the '<em>Process Element</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_ELEMENT_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.WorkDefinitionImpl <em>Work Definition</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkDefinitionImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkDefinition()
* @generated
*/
int WORK_DEFINITION = 1;
/**
* The feature id for the '<em><b>Links To Predecessors</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__LINKS_TO_PREDECESSORS = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Links To Successors</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__LINKS_TO_SUCCESSORS = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__NAME = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The feature id for the '<em><b>Requests</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__REQUESTS = PROCESS_ELEMENT_FEATURE_COUNT + 3;
/**
* The number of structural features of the '<em>Work Definition</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 4;
/**
* The number of operations of the '<em>Work Definition</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.WorkSequenceImpl <em>Work Sequence</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkSequenceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequence()
* @generated
*/
int WORK_SEQUENCE = 2;
/**
* The feature id for the '<em><b>Link Type</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__LINK_TYPE = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Predecessor</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__PREDECESSOR = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Successor</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__SUCCESSOR = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of structural features of the '<em>Work Sequence</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 3;
/**
* The number of operations of the '<em>Work Sequence</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.GuidanceImpl <em>Guidance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.GuidanceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getGuidance()
* @generated
*/
int GUIDANCE = 3;
/**
* The feature id for the '<em><b>Text</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE__TEXT = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Elements</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE__ELEMENTS = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The number of structural features of the '<em>Guidance</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of operations of the '<em>Guidance</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.ProcessImpl <em>Process</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcess()
* @generated
*/
int PROCESS = 4;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS__NAME = 0;
/**
* The feature id for the '<em><b>Process Elements</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS__PROCESS_ELEMENTS = 1;
/**
* The number of structural features of the '<em>Process</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_FEATURE_COUNT = 2;
/**
* The number of operations of the '<em>Process</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.RequestImpl <em>Request</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.RequestImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getRequest()
* @generated
*/
int REQUEST = 5;
/**
* The feature id for the '<em><b>Quantity</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST__QUANTITY = 0;
/**
* The feature id for the '<em><b>Target</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST__TARGET = 1;
/**
* The number of structural features of the '<em>Request</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST_FEATURE_COUNT = 2;
/**
* The number of operations of the '<em>Request</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.ResourceImpl <em>Resource</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ResourceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getResource()
* @generated
*/
int RESOURCE = 6;
/**
* The feature id for the '<em><b>Quantity</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE__QUANTITY = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE__NAME = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The number of structural features of the '<em>Resource</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of operations of the '<em>Resource</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.WorkSequenceType
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequenceType()
* @generated
*/
int WORK_SEQUENCE_TYPE = 7;
/**
* Returns the meta object for class '{@link simplepdl.ProcessElement <em>Process Element</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Process Element</em>'.
* @see simplepdl.ProcessElement
* @generated
*/
EClass getProcessElement();
/**
* Returns the meta object for class '{@link simplepdl.WorkDefinition <em>Work Definition</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Work Definition</em>'.
* @see simplepdl.WorkDefinition
* @generated
*/
EClass getWorkDefinition();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Links To Predecessors</em>'.
* @see simplepdl.WorkDefinition#getLinksToPredecessors()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_LinksToPredecessors();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Links To Successors</em>'.
* @see simplepdl.WorkDefinition#getLinksToSuccessors()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_LinksToSuccessors();
/**
* Returns the meta object for the attribute '{@link simplepdl.WorkDefinition#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.WorkDefinition#getName()
* @see #getWorkDefinition()
* @generated
*/
EAttribute getWorkDefinition_Name();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getRequests <em>Requests</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Requests</em>'.
* @see simplepdl.WorkDefinition#getRequests()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_Requests();
/**
* Returns the meta object for class '{@link simplepdl.WorkSequence <em>Work Sequence</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Work Sequence</em>'.
* @see simplepdl.WorkSequence
* @generated
*/
EClass getWorkSequence();
/**
* Returns the meta object for the attribute '{@link simplepdl.WorkSequence#getLinkType <em>Link Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Link Type</em>'.
* @see simplepdl.WorkSequence#getLinkType()
* @see #getWorkSequence()
* @generated
*/
EAttribute getWorkSequence_LinkType();
/**
* Returns the meta object for the reference '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Predecessor</em>'.
* @see simplepdl.WorkSequence#getPredecessor()
* @see #getWorkSequence()
* @generated
*/
EReference getWorkSequence_Predecessor();
/**
* Returns the meta object for the reference '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Successor</em>'.
* @see simplepdl.WorkSequence#getSuccessor()
* @see #getWorkSequence()
* @generated
*/
EReference getWorkSequence_Successor();
/**
* Returns the meta object for class '{@link simplepdl.Guidance <em>Guidance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Guidance</em>'.
* @see simplepdl.Guidance
* @generated
*/
EClass getGuidance();
/**
* Returns the meta object for the attribute '{@link simplepdl.Guidance#getText <em>Text</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Text</em>'.
* @see simplepdl.Guidance#getText()
* @see #getGuidance()
* @generated
*/
EAttribute getGuidance_Text();
/**
* Returns the meta object for the reference list '{@link simplepdl.Guidance#getElements <em>Elements</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Elements</em>'.
* @see simplepdl.Guidance#getElements()
* @see #getGuidance()
* @generated
*/
EReference getGuidance_Elements();
/**
* Returns the meta object for class '{@link simplepdl.Process <em>Process</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Process</em>'.
* @see simplepdl.Process
* @generated
*/
EClass getProcess();
/**
* Returns the meta object for the attribute '{@link simplepdl.Process#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.Process#getName()
* @see #getProcess()
* @generated
*/
EAttribute getProcess_Name();
/**
* Returns the meta object for the containment reference list '{@link simplepdl.Process#getProcessElements <em>Process Elements</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the containment reference list '<em>Process Elements</em>'.
* @see simplepdl.Process#getProcessElements()
* @see #getProcess()
* @generated
*/
EReference getProcess_ProcessElements();
/**
* Returns the meta object for class '{@link simplepdl.Request <em>Request</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Request</em>'.
* @see simplepdl.Request
* @generated
*/
EClass getRequest();
/**
* Returns the meta object for the attribute '{@link simplepdl.Request#getQuantity <em>Quantity</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Quantity</em>'.
* @see simplepdl.Request#getQuantity()
* @see #getRequest()
* @generated
*/
EAttribute getRequest_Quantity();
/**
* Returns the meta object for the reference '{@link simplepdl.Request#getTarget <em>Target</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Target</em>'.
* @see simplepdl.Request#getTarget()
* @see #getRequest()
* @generated
*/
EReference getRequest_Target();
/**
* Returns the meta object for class '{@link simplepdl.Resource <em>Resource</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Resource</em>'.
* @see simplepdl.Resource
* @generated
*/
EClass getResource();
/**
* Returns the meta object for the attribute '{@link simplepdl.Resource#getQuantity <em>Quantity</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Quantity</em>'.
* @see simplepdl.Resource#getQuantity()
* @see #getResource()
* @generated
*/
EAttribute getResource_Quantity();
/**
* Returns the meta object for the attribute '{@link simplepdl.Resource#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.Resource#getName()
* @see #getResource()
* @generated
*/
EAttribute getResource_Name();
/**
* Returns the meta object for enum '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for enum '<em>Work Sequence Type</em>'.
* @see simplepdl.WorkSequenceType
* @generated
*/
EEnum getWorkSequenceType();
/**
* Returns the factory that creates the instances of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the factory that creates the instances of the model.
* @generated
*/
SimplepdlFactory getSimplepdlFactory();
/**
* <!-- begin-user-doc -->
* Defines literals for the meta objects that represent
* <ul>
* <li>each class,</li>
* <li>each feature of each class,</li>
* <li>each operation of each class,</li>
* <li>each enum,</li>
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
* @generated
*/
interface Literals {
/**
* The meta object literal for the '{@link simplepdl.impl.ProcessElementImpl <em>Process Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessElementImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcessElement()
* @generated
*/
EClass PROCESS_ELEMENT = eINSTANCE.getProcessElement();
/**
* The meta object literal for the '{@link simplepdl.impl.WorkDefinitionImpl <em>Work Definition</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkDefinitionImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkDefinition()
* @generated
*/
EClass WORK_DEFINITION = eINSTANCE.getWorkDefinition();
/**
* The meta object literal for the '<em><b>Links To Predecessors</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__LINKS_TO_PREDECESSORS = eINSTANCE.getWorkDefinition_LinksToPredecessors();
/**
* The meta object literal for the '<em><b>Links To Successors</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__LINKS_TO_SUCCESSORS = eINSTANCE.getWorkDefinition_LinksToSuccessors();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute WORK_DEFINITION__NAME = eINSTANCE.getWorkDefinition_Name();
/**
* The meta object literal for the '<em><b>Requests</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__REQUESTS = eINSTANCE.getWorkDefinition_Requests();
/**
* The meta object literal for the '{@link simplepdl.impl.WorkSequenceImpl <em>Work Sequence</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkSequenceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequence()
* @generated
*/
EClass WORK_SEQUENCE = eINSTANCE.getWorkSequence();
/**
* The meta object literal for the '<em><b>Link Type</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute WORK_SEQUENCE__LINK_TYPE = eINSTANCE.getWorkSequence_LinkType();
/**
* The meta object literal for the '<em><b>Predecessor</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_SEQUENCE__PREDECESSOR = eINSTANCE.getWorkSequence_Predecessor();
/**
* The meta object literal for the '<em><b>Successor</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_SEQUENCE__SUCCESSOR = eINSTANCE.getWorkSequence_Successor();
/**
* The meta object literal for the '{@link simplepdl.impl.GuidanceImpl <em>Guidance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.GuidanceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getGuidance()
* @generated
*/
EClass GUIDANCE = eINSTANCE.getGuidance();
/**
* The meta object literal for the '<em><b>Text</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute GUIDANCE__TEXT = eINSTANCE.getGuidance_Text();
/**
* The meta object literal for the '<em><b>Elements</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference GUIDANCE__ELEMENTS = eINSTANCE.getGuidance_Elements();
/**
* The meta object literal for the '{@link simplepdl.impl.ProcessImpl <em>Process</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcess()
* @generated
*/
EClass PROCESS = eINSTANCE.getProcess();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute PROCESS__NAME = eINSTANCE.getProcess_Name();
/**
* The meta object literal for the '<em><b>Process Elements</b></em>' containment reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference PROCESS__PROCESS_ELEMENTS = eINSTANCE.getProcess_ProcessElements();
/**
* The meta object literal for the '{@link simplepdl.impl.RequestImpl <em>Request</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.RequestImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getRequest()
* @generated
*/
EClass REQUEST = eINSTANCE.getRequest();
/**
* The meta object literal for the '<em><b>Quantity</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute REQUEST__QUANTITY = eINSTANCE.getRequest_Quantity();
/**
* The meta object literal for the '<em><b>Target</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference REQUEST__TARGET = eINSTANCE.getRequest_Target();
/**
* The meta object literal for the '{@link simplepdl.impl.ResourceImpl <em>Resource</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ResourceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getResource()
* @generated
*/
EClass RESOURCE = eINSTANCE.getResource();
/**
* The meta object literal for the '<em><b>Quantity</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute RESOURCE__QUANTITY = eINSTANCE.getResource_Quantity();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute RESOURCE__NAME = eINSTANCE.getResource_Name();
/**
* The meta object literal for the '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.WorkSequenceType
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequenceType()
* @generated
*/
EEnum WORK_SEQUENCE_TYPE = eINSTANCE.getWorkSequenceType();
}
} //SimplepdlPackage

View file

@ -1,185 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequence ws = (WorkSequence) object;
WorkSequenceType labelValue = ws.getLinkType();
String label = "--" + (labelValue == null ? "?" : labelValue.toString()) + "-->";
String previous = ws.getPredecessor() == null ? "?" : ws.getPredecessor().getName();
String next = ws.getSuccessor() == null ? "?" : ws.getSuccessor().getName();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + previous + " " + label + " " + next;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -0,0 +1,28 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
endpackage

View file

@ -1,6 +1,6 @@
/** /**
*/ */
package simplepdl.provider; package petrinet.provider;
import java.util.Collection; import java.util.Collection;
@ -22,16 +22,17 @@ import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemProviderAdapter; import org.eclipse.emf.edit.provider.ItemProviderAdapter;
import org.eclipse.emf.edit.provider.ViewerNotification; import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.Request; import petrinet.Arc;
import simplepdl.SimplepdlPackage; import petrinet.PetrinetPackage;
import petrinet.Place;
/** /**
* This is the item provider adapter for a {@link simplepdl.Request} object. * This is the item provider adapter for a {@link petrinet.Arc} object.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public class RequestItemProvider public class ArcItemProvider
extends ItemProviderAdapter extends ItemProviderAdapter
implements implements
IEditingDomainItemProvider, IEditingDomainItemProvider,
@ -45,7 +46,7 @@ public class RequestItemProvider
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public RequestItemProvider(AdapterFactory adapterFactory) { public ArcItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory); super(adapterFactory);
} }
@ -60,26 +61,27 @@ public class RequestItemProvider
if (itemPropertyDescriptors == null) { if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object); super.getPropertyDescriptors(object);
addQuantityPropertyDescriptor(object); addPoidsPropertyDescriptor(object);
addTargetPropertyDescriptor(object); addSortantPropertyDescriptor(object);
addCiblePropertyDescriptor(object);
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
/** /**
* This adds a property descriptor for the Quantity feature. * This adds a property descriptor for the Poids feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addQuantityPropertyDescriptor(Object object) { protected void addPoidsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Request_quantity_feature"), getString("_UI_Arc_poids_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_quantity_feature", "_UI_Request_type"), getString("_UI_PropertyDescriptor_description", "_UI_Arc_poids_feature", "_UI_Arc_type"),
SimplepdlPackage.Literals.REQUEST__QUANTITY, PetrinetPackage.Literals.ARC__POIDS,
true, true,
false, false,
false, false,
@ -89,19 +91,41 @@ public class RequestItemProvider
} }
/** /**
* This adds a property descriptor for the Target feature. * This adds a property descriptor for the Sortant feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addTargetPropertyDescriptor(Object object) { protected void addSortantPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Request_target_feature"), getString("_UI_Arc_sortant_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_target_feature", "_UI_Request_type"), getString("_UI_PropertyDescriptor_description", "_UI_Arc_sortant_feature", "_UI_Arc_type"),
SimplepdlPackage.Literals.REQUEST__TARGET, PetrinetPackage.Literals.ARC__SORTANT,
true,
false,
false,
ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Cible feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addCiblePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Arc_cible_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Arc_cible_feature", "_UI_Arc_type"),
PetrinetPackage.Literals.ARC__CIBLE,
true, true,
false, false,
true, true,
@ -111,14 +135,14 @@ public class RequestItemProvider
} }
/** /**
* This returns Request.gif. * This returns Arc.gif.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
@Override @Override
public Object getImage(Object object) { public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/Request")); return overlayImage(object, getResourceLocator().getImage("full/obj16/Arc"));
} }
/** /**
@ -129,8 +153,12 @@ public class RequestItemProvider
*/ */
@Override @Override
public String getText(Object object) { public String getText(Object object) {
Request request = (Request)object; boolean sortant = ((Arc)object).isSortant();
return getString("_UI_Request_type") + " --" + request.getQuantity() + "--> " + request.getTarget().getName(); int poids = ((Arc)object).getPoids();
String cible = ((Arc)object).getCible().getName();
return sortant ?
"--" + poids + "-->" + cible :
"<--" + poids + "--" + cible;
} }
@ -145,8 +173,9 @@ public class RequestItemProvider
public void notifyChanged(Notification notification) { public void notifyChanged(Notification notification) {
updateChildren(notification); updateChildren(notification);
switch (notification.getFeatureID(Request.class)) { switch (notification.getFeatureID(Arc.class)) {
case SimplepdlPackage.REQUEST__QUANTITY: case PetrinetPackage.ARC__POIDS:
case PetrinetPackage.ARC__SORTANT:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return; return;
} }
@ -173,7 +202,7 @@ public class RequestItemProvider
*/ */
@Override @Override
public ResourceLocator getResourceLocator() { public ResourceLocator getResourceLocator() {
return SimplePDLEditPlugin.INSTANCE; return PetriNetEditPlugin.INSTANCE;
} }
} }

View file

@ -1,636 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
/**
* <!-- begin-user-doc -->
* The <b>Package</b> for the model.
* It contains accessors for the meta objects to represent
* <ul>
* <li>each class,</li>
* <li>each feature of each class,</li>
* <li>each operation of each class,</li>
* <li>each enum,</li>
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlFactory
* @model kind="package"
* @generated
*/
public interface SimplepdlPackage extends EPackage {
/**
* The package name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNAME = "simplepdl";
/**
* The package namespace URI.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNS_URI = "http://simplepdl";
/**
* The package namespace name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNS_PREFIX = "simplepdl";
/**
* The singleton instance of the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
SimplepdlPackage eINSTANCE = simplepdl.impl.SimplepdlPackageImpl.init();
/**
* The meta object id for the '{@link simplepdl.impl.ProcessElementImpl <em>Process Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessElementImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcessElement()
* @generated
*/
int PROCESS_ELEMENT = 0;
/**
* The number of structural features of the '<em>Process Element</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_ELEMENT_FEATURE_COUNT = 0;
/**
* The number of operations of the '<em>Process Element</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_ELEMENT_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.WorkDefinitionImpl <em>Work Definition</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkDefinitionImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkDefinition()
* @generated
*/
int WORK_DEFINITION = 1;
/**
* The feature id for the '<em><b>Links To Predecessors</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__LINKS_TO_PREDECESSORS = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Links To Successors</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__LINKS_TO_SUCCESSORS = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__NAME = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of structural features of the '<em>Work Definition</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 3;
/**
* The number of operations of the '<em>Work Definition</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.WorkSequenceImpl <em>Work Sequence</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkSequenceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequence()
* @generated
*/
int WORK_SEQUENCE = 2;
/**
* The feature id for the '<em><b>Link Type</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__LINK_TYPE = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Predecessor</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__PREDECESSOR = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Successor</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__SUCCESSOR = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of structural features of the '<em>Work Sequence</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 3;
/**
* The number of operations of the '<em>Work Sequence</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.GuidanceImpl <em>Guidance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.GuidanceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getGuidance()
* @generated
*/
int GUIDANCE = 3;
/**
* The feature id for the '<em><b>Text</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE__TEXT = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Elements</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE__ELEMENTS = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The number of structural features of the '<em>Guidance</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of operations of the '<em>Guidance</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.ProcessImpl <em>Process</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcess()
* @generated
*/
int PROCESS = 4;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS__NAME = 0;
/**
* The feature id for the '<em><b>Process Elements</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS__PROCESS_ELEMENTS = 1;
/**
* The number of structural features of the '<em>Process</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_FEATURE_COUNT = 2;
/**
* The number of operations of the '<em>Process</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.WorkSequenceType
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequenceType()
* @generated
*/
int WORK_SEQUENCE_TYPE = 5;
/**
* Returns the meta object for class '{@link simplepdl.ProcessElement <em>Process Element</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Process Element</em>'.
* @see simplepdl.ProcessElement
* @generated
*/
EClass getProcessElement();
/**
* Returns the meta object for class '{@link simplepdl.WorkDefinition <em>Work Definition</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Work Definition</em>'.
* @see simplepdl.WorkDefinition
* @generated
*/
EClass getWorkDefinition();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Links To Predecessors</em>'.
* @see simplepdl.WorkDefinition#getLinksToPredecessors()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_LinksToPredecessors();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Links To Successors</em>'.
* @see simplepdl.WorkDefinition#getLinksToSuccessors()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_LinksToSuccessors();
/**
* Returns the meta object for the attribute '{@link simplepdl.WorkDefinition#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.WorkDefinition#getName()
* @see #getWorkDefinition()
* @generated
*/
EAttribute getWorkDefinition_Name();
/**
* Returns the meta object for class '{@link simplepdl.WorkSequence <em>Work Sequence</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Work Sequence</em>'.
* @see simplepdl.WorkSequence
* @generated
*/
EClass getWorkSequence();
/**
* Returns the meta object for the attribute '{@link simplepdl.WorkSequence#getLinkType <em>Link Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Link Type</em>'.
* @see simplepdl.WorkSequence#getLinkType()
* @see #getWorkSequence()
* @generated
*/
EAttribute getWorkSequence_LinkType();
/**
* Returns the meta object for the reference '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Predecessor</em>'.
* @see simplepdl.WorkSequence#getPredecessor()
* @see #getWorkSequence()
* @generated
*/
EReference getWorkSequence_Predecessor();
/**
* Returns the meta object for the reference '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Successor</em>'.
* @see simplepdl.WorkSequence#getSuccessor()
* @see #getWorkSequence()
* @generated
*/
EReference getWorkSequence_Successor();
/**
* Returns the meta object for class '{@link simplepdl.Guidance <em>Guidance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Guidance</em>'.
* @see simplepdl.Guidance
* @generated
*/
EClass getGuidance();
/**
* Returns the meta object for the attribute '{@link simplepdl.Guidance#getText <em>Text</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Text</em>'.
* @see simplepdl.Guidance#getText()
* @see #getGuidance()
* @generated
*/
EAttribute getGuidance_Text();
/**
* Returns the meta object for the reference list '{@link simplepdl.Guidance#getElements <em>Elements</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Elements</em>'.
* @see simplepdl.Guidance#getElements()
* @see #getGuidance()
* @generated
*/
EReference getGuidance_Elements();
/**
* Returns the meta object for class '{@link simplepdl.Process <em>Process</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Process</em>'.
* @see simplepdl.Process
* @generated
*/
EClass getProcess();
/**
* Returns the meta object for the attribute '{@link simplepdl.Process#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.Process#getName()
* @see #getProcess()
* @generated
*/
EAttribute getProcess_Name();
/**
* Returns the meta object for the containment reference list '{@link simplepdl.Process#getProcessElements <em>Process Elements</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the containment reference list '<em>Process Elements</em>'.
* @see simplepdl.Process#getProcessElements()
* @see #getProcess()
* @generated
*/
EReference getProcess_ProcessElements();
/**
* Returns the meta object for enum '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for enum '<em>Work Sequence Type</em>'.
* @see simplepdl.WorkSequenceType
* @generated
*/
EEnum getWorkSequenceType();
/**
* Returns the factory that creates the instances of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the factory that creates the instances of the model.
* @generated
*/
SimplepdlFactory getSimplepdlFactory();
/**
* <!-- begin-user-doc -->
* Defines literals for the meta objects that represent
* <ul>
* <li>each class,</li>
* <li>each feature of each class,</li>
* <li>each operation of each class,</li>
* <li>each enum,</li>
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
* @generated
*/
interface Literals {
/**
* The meta object literal for the '{@link simplepdl.impl.ProcessElementImpl <em>Process Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessElementImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcessElement()
* @generated
*/
EClass PROCESS_ELEMENT = eINSTANCE.getProcessElement();
/**
* The meta object literal for the '{@link simplepdl.impl.WorkDefinitionImpl <em>Work Definition</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkDefinitionImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkDefinition()
* @generated
*/
EClass WORK_DEFINITION = eINSTANCE.getWorkDefinition();
/**
* The meta object literal for the '<em><b>Links To Predecessors</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__LINKS_TO_PREDECESSORS = eINSTANCE.getWorkDefinition_LinksToPredecessors();
/**
* The meta object literal for the '<em><b>Links To Successors</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__LINKS_TO_SUCCESSORS = eINSTANCE.getWorkDefinition_LinksToSuccessors();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute WORK_DEFINITION__NAME = eINSTANCE.getWorkDefinition_Name();
/**
* The meta object literal for the '{@link simplepdl.impl.WorkSequenceImpl <em>Work Sequence</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkSequenceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequence()
* @generated
*/
EClass WORK_SEQUENCE = eINSTANCE.getWorkSequence();
/**
* The meta object literal for the '<em><b>Link Type</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute WORK_SEQUENCE__LINK_TYPE = eINSTANCE.getWorkSequence_LinkType();
/**
* The meta object literal for the '<em><b>Predecessor</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_SEQUENCE__PREDECESSOR = eINSTANCE.getWorkSequence_Predecessor();
/**
* The meta object literal for the '<em><b>Successor</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_SEQUENCE__SUCCESSOR = eINSTANCE.getWorkSequence_Successor();
/**
* The meta object literal for the '{@link simplepdl.impl.GuidanceImpl <em>Guidance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.GuidanceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getGuidance()
* @generated
*/
EClass GUIDANCE = eINSTANCE.getGuidance();
/**
* The meta object literal for the '<em><b>Text</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute GUIDANCE__TEXT = eINSTANCE.getGuidance_Text();
/**
* The meta object literal for the '<em><b>Elements</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference GUIDANCE__ELEMENTS = eINSTANCE.getGuidance_Elements();
/**
* The meta object literal for the '{@link simplepdl.impl.ProcessImpl <em>Process</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcess()
* @generated
*/
EClass PROCESS = eINSTANCE.getProcess();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute PROCESS__NAME = eINSTANCE.getProcess_Name();
/**
* The meta object literal for the '<em><b>Process Elements</b></em>' containment reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference PROCESS__PROCESS_ELEMENTS = eINSTANCE.getProcess_ProcessElements();
/**
* The meta object literal for the '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.WorkSequenceType
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequenceType()
* @generated
*/
EEnum WORK_SEQUENCE_TYPE = eINSTANCE.getWorkSequenceType();
}
} //SimplepdlPackage

View file

@ -7,7 +7,7 @@
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//Noeud"> <eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//Noeud">
<eStructuralFeatures xsi:type="ecore:EReference" name="fleches" upperBound="-1" <eStructuralFeatures xsi:type="ecore:EReference" name="fleches" upperBound="-1"
eType="#//Flèche"/> eType="#//Flèche" containment="true"/>
</eClassifiers> </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Flèche"> <eClassifiers xsi:type="ecore:EClass" name="Flèche">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="poids" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="poids" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

View file

@ -1,201 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
/**
* This is the item provider adapter for a {@link simplepdl.WorkDefinition} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkDefinitionItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinitionItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinksToPredecessorsPropertyDescriptor(object);
addLinksToSuccessorsPropertyDescriptor(object);
addNamePropertyDescriptor(object);
addRequestsPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Links To Predecessors feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinksToPredecessorsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkDefinition_linksToPredecessors_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkDefinition_linksToPredecessors_feature", "_UI_WorkDefinition_type"),
SimplepdlPackage.Literals.WORK_DEFINITION__LINKS_TO_PREDECESSORS,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Links To Successors feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinksToSuccessorsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkDefinition_linksToSuccessors_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkDefinition_linksToSuccessors_feature", "_UI_WorkDefinition_type"),
SimplepdlPackage.Literals.WORK_DEFINITION__LINKS_TO_SUCCESSORS,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Name feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addNamePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkDefinition_name_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkDefinition_name_feature", "_UI_WorkDefinition_type"),
SimplepdlPackage.Literals.WORK_DEFINITION__NAME,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Requests feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addRequestsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkDefinition_requests_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkDefinition_requests_feature", "_UI_WorkDefinition_type"),
SimplepdlPackage.Literals.WORK_DEFINITION__REQUESTS,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkDefinition.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkDefinition"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
String label = ((WorkDefinition)object).getName();
return label == null || label.length() == 0 ?
getString("_UI_WorkDefinition_type") :
getString("_UI_WorkDefinition_type") + " " + label;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkDefinition.class)) {
case SimplepdlPackage.WORK_DEFINITION__NAME:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:simplepdl="http://simplepdl" xsi:schemaLocation="http://simplepdl SimplePDL.ecore"/>

View file

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:simplepdl="http://simplepdl">
<processElements xsi:type="simplepdl:WorkDefinition" linksToSuccessors="//@processElements.2" name="a1"/>
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.2" name="a2"/>
<processElements xsi:type="simplepdl:WorkSequence" predecessor="//@processElements.0" successor="//@processElements.1"/>
</simplepdl:Process>

View file

@ -0,0 +1,28 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
endpackage

View file

@ -1,39 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import simplepdl.ProcessElement;
import simplepdl.SimplepdlPackage;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Process Element</b></em>'.
* <!-- end-user-doc -->
*
* @generated
*/
public class ProcessElementImpl extends MinimalEObjectImpl.Container implements ProcessElement {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected ProcessElementImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.PROCESS_ELEMENT;
}
} //ProcessElementImpl

View file

@ -1,61 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Process</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.Process#getName <em>Name</em>}</li>
* <li>{@link simplepdl.Process#getProcessElements <em>Process Elements</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getProcess()
* @model
* @generated
*/
public interface Process extends EObject {
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see simplepdl.SimplepdlPackage#getProcess_Name()
* @model required="true"
* @generated
*/
String getName();
/**
* Sets the value of the '{@link simplepdl.Process#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the '<em><b>Process Elements</b></em>' containment reference list.
* The list contents are of type {@link simplepdl.ProcessElement}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Process Elements</em>' containment reference list.
* @see simplepdl.SimplepdlPackage#getProcess_ProcessElements()
* @model containment="true"
* @generated
*/
EList<ProcessElement> getProcessElements();
} // Process

View file

@ -0,0 +1,50 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
--inv errorSeverity: null
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,182 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequenceType labelValue = ((WorkSequence)object).getLinkType();
String label = labelValue == null ? null : labelValue.toString();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + label;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -0,0 +1,49 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
--inv errorSeverity: null
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,668 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style">
<viewpoint:DAnalysis uid="_oRyK4BuHEeynApCp8QEOUg" selectedViews="_oSYAwBuHEeynApCp8QEOUg _oSeucBuHEeynApCp8QEOUg _oSf8kBuHEeynApCp8QEOUg _oSiY0BuHEeynApCp8QEOUg" version="14.3.1.202003261200">
<semanticResources>petriNet.ecore</semanticResources>
<ownedViews xmi:type="viewpoint:DView" uid="_oSYAwBuHEeynApCp8QEOUg">
<viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/>
<ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_og5k8RuHEeynApCp8QEOUg" name="petrinet class diagram" repPath="#_og0FYBuHEeynApCp8QEOUg" changeId="2e379185-3ad3-48bc-ab74-3982a119a1f4">
<description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
<target xmi:type="ecore:EPackage" href="petriNet.ecore#/"/>
</ownedRepresentationDescriptors>
<ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_Th3hsCKXEeyolrAZ4xuFwg" name="petrinet class diagram" repPath="#_ThzQQCKXEeyolrAZ4xuFwg" changeId="e53edb5d-c1e3-46dc-abdc-a6d8903e5a28">
<description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
<target xmi:type="ecore:EPackage" href="petriNet.ecore#/"/>
</ownedRepresentationDescriptors>
</ownedViews>
<ownedViews xmi:type="viewpoint:DView" uid="_oSeucBuHEeynApCp8QEOUg">
<viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Review']"/>
</ownedViews>
<ownedViews xmi:type="viewpoint:DView" uid="_oSf8kBuHEeynApCp8QEOUg">
<viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']"/>
</ownedViews>
<ownedViews xmi:type="viewpoint:DView" uid="_oSiY0BuHEeynApCp8QEOUg">
<viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Generation']"/>
</ownedViews>
</viewpoint:DAnalysis>
<diagram:DSemanticDiagram uid="_og0FYBuHEeynApCp8QEOUg">
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_og5k8huHEeynApCp8QEOUg" source="GMF_DIAGRAMS">
<data xmi:type="notation:Diagram" xmi:id="_og5k8xuHEeynApCp8QEOUg" type="Sirius" element="_og0FYBuHEeynApCp8QEOUg" measurementUnit="Pixel">
<children xmi:type="notation:Node" xmi:id="_ou3IcBuHEeynApCp8QEOUg" type="2003" element="_ouulkBuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou3IcxuHEeynApCp8QEOUg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_ou3IdBuHEeynApCp8QEOUg" type="7004">
<children xmi:type="notation:Node" xmi:id="_ou3vkhuHEeynApCp8QEOUg" type="3010" element="_ouy3AhuHEeynApCp8QEOUg">
<styles xmi:type="notation:FontStyle" xmi:id="_ou3vkxuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_ou3vlBuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_ou3IdRuHEeynApCp8QEOUg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_ou3IdhuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_ou3IcRuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou3IchuHEeynApCp8QEOUg" x="756" y="240"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou3IdxuHEeynApCp8QEOUg" type="2003" element="_ouvzsRuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou3vgBuHEeynApCp8QEOUg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_ou3vgRuHEeynApCp8QEOUg" type="7004">
<styles xmi:type="notation:SortingStyle" xmi:id="_ou3vghuHEeynApCp8QEOUg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_ou3vgxuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_ou3IeBuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou3IeRuHEeynApCp8QEOUg" x="328" y="232"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou3vhBuHEeynApCp8QEOUg" type="2003" element="_ouwawBuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou3vhxuHEeynApCp8QEOUg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_ou3viBuHEeynApCp8QEOUg" type="7004">
<children xmi:type="notation:Node" xmi:id="_ou3vlRuHEeynApCp8QEOUg" type="3010" element="_ouzeEBuHEeynApCp8QEOUg">
<styles xmi:type="notation:FontStyle" xmi:id="_ou3vlhuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_ou3vlxuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_ou3viRuHEeynApCp8QEOUg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_ou3vihuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_ou3vhRuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou3vhhuHEeynApCp8QEOUg" x="540" y="424"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou3vixuHEeynApCp8QEOUg" type="2003" element="_ouwawxuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou3vjhuHEeynApCp8QEOUg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_ou3vjxuHEeynApCp8QEOUg" type="7004">
<children xmi:type="notation:Node" xmi:id="_ou4WkBuHEeynApCp8QEOUg" type="3010" element="_ou0FIBuHEeynApCp8QEOUg">
<styles xmi:type="notation:FontStyle" xmi:id="_ou4WkRuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_ou4WkhuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_ou3vkBuHEeynApCp8QEOUg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_ou3vkRuHEeynApCp8QEOUg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_ou3vjBuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou3vjRuHEeynApCp8QEOUg" x="540" y="108"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_og5k9BuHEeynApCp8QEOUg"/>
<edges xmi:type="notation:Edge" xmi:id="_ou4WkxuHEeynApCp8QEOUg" type="4001" element="_ou0sMBuHEeynApCp8QEOUg" source="_ou3IdxuHEeynApCp8QEOUg" target="_ou3vhBuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou4WlxuHEeynApCp8QEOUg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou4WmBuHEeynApCp8QEOUg" x="89" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou4WmRuHEeynApCp8QEOUg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou4WmhuHEeynApCp8QEOUg" x="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou4WmxuHEeynApCp8QEOUg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou4WnBuHEeynApCp8QEOUg" x="4" y="-6"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_ou4WlBuHEeynApCp8QEOUg" routing="Rectilinear"/>
<styles xmi:type="notation:FontStyle" xmi:id="_ou4WlRuHEeynApCp8QEOUg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ou4WlhuHEeynApCp8QEOUg" points="[0, 98, -212, -192]$[0, 240, -212, -50]$[152, 240, -60, -50]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou4WnRuHEeynApCp8QEOUg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou4WnhuHEeynApCp8QEOUg" id="(0.5084745762711864,1.0)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_ou49oBuHEeynApCp8QEOUg" type="4001" element="_ou0sNxuHEeynApCp8QEOUg" source="_ou3vhBuHEeynApCp8QEOUg" target="_ou3vixuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou49pBuHEeynApCp8QEOUg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49pRuHEeynApCp8QEOUg" x="30"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou49phuHEeynApCp8QEOUg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49pxuHEeynApCp8QEOUg" x="-4"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou49qBuHEeynApCp8QEOUg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49qRuHEeynApCp8QEOUg" x="-139"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_ou49oRuHEeynApCp8QEOUg" routing="Rectilinear"/>
<styles xmi:type="notation:FontStyle" xmi:id="_ou49ohuHEeynApCp8QEOUg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ou49oxuHEeynApCp8QEOUg" points="[36, 0, 36, 218]$[36, -218, 36, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou49qhuHEeynApCp8QEOUg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou49qxuHEeynApCp8QEOUg" id="(0.5084745762711864,1.0)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_ou49rBuHEeynApCp8QEOUg" type="4001" element="_ou1TSRuHEeynApCp8QEOUg" source="_ou3vhBuHEeynApCp8QEOUg" target="_ou3vixuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou49sBuHEeynApCp8QEOUg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49sRuHEeynApCp8QEOUg" x="30"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou49shuHEeynApCp8QEOUg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49sxuHEeynApCp8QEOUg" x="-4"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou49tBuHEeynApCp8QEOUg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49tRuHEeynApCp8QEOUg" x="-129" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_ou49rRuHEeynApCp8QEOUg" routing="Rectilinear"/>
<styles xmi:type="notation:FontStyle" xmi:id="_ou49rhuHEeynApCp8QEOUg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ou49rxuHEeynApCp8QEOUg" points="[-28, 0, -28, 218]$[-28, -218, -28, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou49thuHEeynApCp8QEOUg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou49txuHEeynApCp8QEOUg" id="(0.5084745762711864,1.0)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_ou49uBuHEeynApCp8QEOUg" type="4001" element="_ou16UxuHEeynApCp8QEOUg" source="_ou3IcBuHEeynApCp8QEOUg" target="_ou3vixuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou49vBuHEeynApCp8QEOUg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49vRuHEeynApCp8QEOUg" x="-1" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou49vhuHEeynApCp8QEOUg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49vxuHEeynApCp8QEOUg" x="-6" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou49wBuHEeynApCp8QEOUg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou49wRuHEeynApCp8QEOUg" x="-16" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_ou49uRuHEeynApCp8QEOUg" routing="Tree"/>
<styles xmi:type="notation:FontStyle" xmi:id="_ou49uhuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ou49uxuHEeynApCp8QEOUg" points="[0, 0, 216, 34]$[0, -176, 216, -142]$[-218, -176, -2, -142]$[-218, -132, -2, -98]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou49whuHEeynApCp8QEOUg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou49wxuHEeynApCp8QEOUg" id="(0.5084745762711864,1.0)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_ou5ksBuHEeynApCp8QEOUg" type="4001" element="_ou2hZhuHEeynApCp8QEOUg" source="_ou3IdxuHEeynApCp8QEOUg" target="_ou3vixuHEeynApCp8QEOUg">
<children xmi:type="notation:Node" xmi:id="_ou5ktBuHEeynApCp8QEOUg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou5ktRuHEeynApCp8QEOUg" x="25" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou5kthuHEeynApCp8QEOUg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou5ktxuHEeynApCp8QEOUg" x="26" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_ou5kuBuHEeynApCp8QEOUg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ou5kuRuHEeynApCp8QEOUg" x="15" y="2"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_ou5ksRuHEeynApCp8QEOUg" routing="Tree"/>
<styles xmi:type="notation:FontStyle" xmi:id="_ou5kshuHEeynApCp8QEOUg" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ou5ksxuHEeynApCp8QEOUg" points="[0, 0, -162, 61]$[0, -156, -162, -95]$[176, -156, 14, -95]$[176, -124, 14, -63]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou5kuhuHEeynApCp8QEOUg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ou5kuxuHEeynApCp8QEOUg" id="(0.0847457627118644,0.6428571428571429)"/>
</edges>
</data>
</ownedAnnotationEntries>
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_og7aIRuHEeynApCp8QEOUg" source="DANNOTATION_CUSTOMIZATION_KEY">
<data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_og7aIhuHEeynApCp8QEOUg">
<computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_ouzeERuHEeynApCp8QEOUg" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
<borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelFormat>bold</labelFormat>
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</computedStyleDescriptions>
<computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_ou1TQBuHEeynApCp8QEOUg" routingStyle="manhattan">
<strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_ou1TQRuHEeynApCp8QEOUg" showIcon="false" labelExpression="service:render">
<labelFormat>bold</labelFormat>
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</centerLabelStyleDescription>
<endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_ou1TQhuHEeynApCp8QEOUg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
</endLabelStyleDescription>
</computedStyleDescriptions>
</data>
</ownedAnnotationEntries>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ouulkBuHEeynApCp8QEOUg" name="Place" tooltipText="" outgoingEdges="_ou16UxuHEeynApCp8QEOUg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ouvMoBuHEeynApCp8QEOUg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_ouy3AhuHEeynApCp8QEOUg" name="Jeton : EInt" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Place/Jeton"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Place/Jeton"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_ouy3AxuHEeynApCp8QEOUg" labelAlignment="LEFT">
<description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ouvzsRuHEeynApCp8QEOUg" name="Transition" tooltipText="" outgoingEdges="_ou0sMBuHEeynApCp8QEOUg _ou2hZhuHEeynApCp8QEOUg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ouvzshuHEeynApCp8QEOUg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ouwawBuHEeynApCp8QEOUg" name="Flèche" tooltipText="" outgoingEdges="_ou0sNxuHEeynApCp8QEOUg _ou1TSRuHEeynApCp8QEOUg" incomingEdges="_ou0sMBuHEeynApCp8QEOUg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Flèche"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Flèche"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ouwawRuHEeynApCp8QEOUg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_ouzeEBuHEeynApCp8QEOUg" name="poids : EInt" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Flèche/poids"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Flèche/poids"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_ouzeEhuHEeynApCp8QEOUg" labelAlignment="LEFT" description="_ouzeERuHEeynApCp8QEOUg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_ouwawxuHEeynApCp8QEOUg" name="Case" tooltipText="" incomingEdges="_ou0sNxuHEeynApCp8QEOUg _ou1TSRuHEeynApCp8QEOUg _ou16UxuHEeynApCp8QEOUg _ou2hZhuHEeynApCp8QEOUg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Case"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Case"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_ouxB0BuHEeynApCp8QEOUg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_ou0FIBuHEeynApCp8QEOUg" name="name : EString" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Case/name"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Case/name"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_ou0FIRuHEeynApCp8QEOUg" labelAlignment="LEFT" description="_ouzeERuHEeynApCp8QEOUg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_ou0sMBuHEeynApCp8QEOUg" name="[0..*] fleches" sourceNode="_ouvzsRuHEeynApCp8QEOUg" targetNode="_ouwawBuHEeynApCp8QEOUg">
<target xmi:type="ecore:EReference" href="petriNet.ecore#//Transition/fleches"/>
<semanticElements xmi:type="ecore:EReference" href="petriNet.ecore#//Transition/fleches"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_ou0sMRuHEeynApCp8QEOUg" routingStyle="manhattan" strokeColor="0,0,0">
<description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ou0sMxuHEeynApCp8QEOUg" showIcon="false">
<customFeatures>labelSize</customFeatures>
</centerLabelStyle>
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_ou0sMhuHEeynApCp8QEOUg" showIcon="false" labelColor="39,76,114">
<customFeatures>labelSize</customFeatures>
</endLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_ou0sNxuHEeynApCp8QEOUg" name="[1..1] origin" sourceNode="_ouwawBuHEeynApCp8QEOUg" targetNode="_ouwawxuHEeynApCp8QEOUg">
<target xmi:type="ecore:EReference" href="petriNet.ecore#//Flèche/origin"/>
<semanticElements xmi:type="ecore:EReference" href="petriNet.ecore#//Flèche/origin"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_ou1TQxuHEeynApCp8QEOUg" description="_ou1TQBuHEeynApCp8QEOUg" routingStyle="manhattan" strokeColor="0,0,0">
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ou1TRRuHEeynApCp8QEOUg" showIcon="false">
<customFeatures>labelSize</customFeatures>
</centerLabelStyle>
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_ou1TRBuHEeynApCp8QEOUg" showIcon="false" labelColor="39,76,114">
<customFeatures>labelSize</customFeatures>
</endLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_ou1TSRuHEeynApCp8QEOUg" name="[1..1] cible" sourceNode="_ouwawBuHEeynApCp8QEOUg" targetNode="_ouwawxuHEeynApCp8QEOUg">
<target xmi:type="ecore:EReference" href="petriNet.ecore#//Flèche/cible"/>
<semanticElements xmi:type="ecore:EReference" href="petriNet.ecore#//Flèche/cible"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_ou1TShuHEeynApCp8QEOUg" description="_ou1TQBuHEeynApCp8QEOUg" routingStyle="manhattan" strokeColor="0,0,0">
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ou1TTBuHEeynApCp8QEOUg" showIcon="false">
<customFeatures>labelSize</customFeatures>
</centerLabelStyle>
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_ou1TSxuHEeynApCp8QEOUg" showIcon="false" labelColor="39,76,114">
<customFeatures>labelSize</customFeatures>
</endLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_ou16UxuHEeynApCp8QEOUg" sourceNode="_ouulkBuHEeynApCp8QEOUg" targetNode="_ouwawxuHEeynApCp8QEOUg">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_ou2hYBuHEeynApCp8QEOUg" targetArrow="InputClosedArrow" routingStyle="tree">
<description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
<beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_ou2hYRuHEeynApCp8QEOUg" showIcon="false">
<labelFormat>italic</labelFormat>
</beginLabelStyle>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ou2hYhuHEeynApCp8QEOUg" showIcon="false"/>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_ou2hZhuHEeynApCp8QEOUg" sourceNode="_ouvzsRuHEeynApCp8QEOUg" targetNode="_ouwawxuHEeynApCp8QEOUg">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_ou2hZxuHEeynApCp8QEOUg" targetArrow="InputClosedArrow" routingStyle="tree">
<description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
<beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_ou2haBuHEeynApCp8QEOUg" showIcon="false">
<labelFormat>italic</labelFormat>
</beginLabelStyle>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_ou2haRuHEeynApCp8QEOUg" showIcon="false"/>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
</ownedDiagramElements>
<description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
<filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_og494BuHEeynApCp8QEOUg"/>
<activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
<activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/>
<activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/>
<activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']/@ownedRepresentationExtensions[name='Entities%20With%20Archetypes']/@layers[name='Archetypes']"/>
<target xmi:type="ecore:EPackage" href="petriNet.ecore#/"/>
</diagram:DSemanticDiagram>
<diagram:DSemanticDiagram uid="_ThzQQCKXEeyolrAZ4xuFwg">
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_Th3hsSKXEeyolrAZ4xuFwg" source="GMF_DIAGRAMS">
<data xmi:type="notation:Diagram" xmi:id="_Th3hsiKXEeyolrAZ4xuFwg" type="Sirius" element="_ThzQQCKXEeyolrAZ4xuFwg" measurementUnit="Pixel">
<children xmi:type="notation:Node" xmi:id="_TuWegCKXEeyolrAZ4xuFwg" type="2003" element="_TuPJwCKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuWegyKXEeyolrAZ4xuFwg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_TuWehCKXEeyolrAZ4xuFwg" type="7004">
<children xmi:type="notation:Node" xmi:id="_TuXFqCKXEeyolrAZ4xuFwg" type="3010" element="_TuS0IiKXEeyolrAZ4xuFwg">
<styles xmi:type="notation:FontStyle" xmi:id="_TuXFqSKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_TuXFqiKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_TuWehSKXEeyolrAZ4xuFwg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_TuWehiKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_TuWegSKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuWegiKXEeyolrAZ4xuFwg" x="256" y="223"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuWehyKXEeyolrAZ4xuFwg" type="2003" element="_TuPw0SKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuWeiiKXEeyolrAZ4xuFwg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_TuXFkCKXEeyolrAZ4xuFwg" type="7004">
<styles xmi:type="notation:SortingStyle" xmi:id="_TuXFkSKXEeyolrAZ4xuFwg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_TuXFkiKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_TuWeiCKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuWeiSKXEeyolrAZ4xuFwg" x="844" y="223"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuXFkyKXEeyolrAZ4xuFwg" type="2003" element="_TuPw1CKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuXFliKXEeyolrAZ4xuFwg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_TuXFlyKXEeyolrAZ4xuFwg" type="7004">
<children xmi:type="notation:Node" xmi:id="_TuXsoCKXEeyolrAZ4xuFwg" type="3010" element="_TuTbMCKXEeyolrAZ4xuFwg">
<styles xmi:type="notation:FontStyle" xmi:id="_TuXsoSKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_TuXsoiKXEeyolrAZ4xuFwg"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuXsoyKXEeyolrAZ4xuFwg" type="3010" element="_TuTbMiKXEeyolrAZ4xuFwg">
<styles xmi:type="notation:FontStyle" xmi:id="_TuXspCKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_TuXspSKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_TuXFmCKXEeyolrAZ4xuFwg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_TuXFmSKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_TuXFlCKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuXFlSKXEeyolrAZ4xuFwg" x="560" y="223"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuXFmiKXEeyolrAZ4xuFwg" type="2003" element="_TuQX4iKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuXFnSKXEeyolrAZ4xuFwg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_TuXFniKXEeyolrAZ4xuFwg" type="7004">
<children xmi:type="notation:Node" xmi:id="_TuXspiKXEeyolrAZ4xuFwg" type="3010" element="_TuTbNCKXEeyolrAZ4xuFwg">
<styles xmi:type="notation:FontStyle" xmi:id="_TuXspyKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_TuXsqCKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_TuXFnyKXEeyolrAZ4xuFwg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_TuXFoCKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_TuXFmyKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8" italic="true"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuXFnCKXEeyolrAZ4xuFwg" x="584" y="68"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuXFoSKXEeyolrAZ4xuFwg" type="2003" element="_TuQX5SKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuXFpCKXEeyolrAZ4xuFwg" type="5007"/>
<children xmi:type="notation:Node" xmi:id="_TuXFpSKXEeyolrAZ4xuFwg" type="7004">
<children xmi:type="notation:Node" xmi:id="_TuXsqSKXEeyolrAZ4xuFwg" type="3010" element="_TuUCQSKXEeyolrAZ4xuFwg">
<styles xmi:type="notation:FontStyle" xmi:id="_TuXsqiKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8" bold="true"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_TuXsqyKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:SortingStyle" xmi:id="_TuXFpiKXEeyolrAZ4xuFwg"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_TuXFpyKXEeyolrAZ4xuFwg"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_TuXFoiKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuXFoyKXEeyolrAZ4xuFwg" x="256" y="68"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_Th3hsyKXEeyolrAZ4xuFwg"/>
<edges xmi:type="notation:Edge" xmi:id="_TuXsrCKXEeyolrAZ4xuFwg" type="4001" element="_TuUpUCKXEeyolrAZ4xuFwg" source="_TuWehyKXEeyolrAZ4xuFwg" target="_TuXFkyKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuXssCKXEeyolrAZ4xuFwg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuXssSKXEeyolrAZ4xuFwg" x="-32" y="-15"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuXssiKXEeyolrAZ4xuFwg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuXssyKXEeyolrAZ4xuFwg" x="16" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuYTsCKXEeyolrAZ4xuFwg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTsSKXEeyolrAZ4xuFwg" x="16" y="-10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_TuXsrSKXEeyolrAZ4xuFwg" routing="Rectilinear"/>
<styles xmi:type="notation:FontStyle" xmi:id="_TuXsriKXEeyolrAZ4xuFwg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TuXsryKXEeyolrAZ4xuFwg" points="[-59, -10, 208, -10]$[-191, -10, 76, -10]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuYTsiKXEeyolrAZ4xuFwg" id="(0.5,0.5)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuYTsyKXEeyolrAZ4xuFwg" id="(0.5,0.5)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_TuYTtCKXEeyolrAZ4xuFwg" type="4001" element="_TuUpVyKXEeyolrAZ4xuFwg" source="_TuXFkyKXEeyolrAZ4xuFwg" target="_TuWegCKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuYTuCKXEeyolrAZ4xuFwg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTuSKXEeyolrAZ4xuFwg" x="-61" y="-13"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuYTuiKXEeyolrAZ4xuFwg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTuyKXEeyolrAZ4xuFwg" x="59" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuYTvCKXEeyolrAZ4xuFwg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTvSKXEeyolrAZ4xuFwg" x="16" y="-10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_TuYTtSKXEeyolrAZ4xuFwg" routing="Rectilinear"/>
<styles xmi:type="notation:FontStyle" xmi:id="_TuYTtiKXEeyolrAZ4xuFwg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TuYTtyKXEeyolrAZ4xuFwg" points="[-76, 8, 245, 8]$[-262, 8, 59, 8]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuYTviKXEeyolrAZ4xuFwg" id="(0.5,0.5)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuYTvyKXEeyolrAZ4xuFwg" id="(0.5,0.5)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_TuYTwCKXEeyolrAZ4xuFwg" type="4001" element="_TuVQYyKXEeyolrAZ4xuFwg" source="_TuXFoSKXEeyolrAZ4xuFwg" target="_TuXFmiKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuYTxCKXEeyolrAZ4xuFwg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTxSKXEeyolrAZ4xuFwg" x="-38" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuYTxiKXEeyolrAZ4xuFwg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTxyKXEeyolrAZ4xuFwg" x="-20" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuYTyCKXEeyolrAZ4xuFwg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuYTySKXEeyolrAZ4xuFwg" x="-11" y="-10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_TuYTwSKXEeyolrAZ4xuFwg" routing="Rectilinear"/>
<styles xmi:type="notation:FontStyle" xmi:id="_TuYTwiKXEeyolrAZ4xuFwg" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TuYTwyKXEeyolrAZ4xuFwg" points="[58, 28, -270, -70]$[268, 28, -60, -70]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuYTyiKXEeyolrAZ4xuFwg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuYTyyKXEeyolrAZ4xuFwg" id="(0.5084745762711864,1.0)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_TuYTzCKXEeyolrAZ4xuFwg" type="4001" element="_TuVQbSKXEeyolrAZ4xuFwg" source="_TuWegCKXEeyolrAZ4xuFwg" target="_TuXFmiKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuY6wCKXEeyolrAZ4xuFwg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuY6wSKXEeyolrAZ4xuFwg" x="-8" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuY6wiKXEeyolrAZ4xuFwg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuY6wyKXEeyolrAZ4xuFwg" x="-8" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuY6xCKXEeyolrAZ4xuFwg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuY6xSKXEeyolrAZ4xuFwg" x="-8" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_TuYTzSKXEeyolrAZ4xuFwg" routing="Tree"/>
<styles xmi:type="notation:FontStyle" xmi:id="_TuYTziKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TuYTzyKXEeyolrAZ4xuFwg" points="[0, 0, -328, 57]$[0, -31, -328, 26]$[328, -31, 0, 26]$[328, -57, 0, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuY6xiKXEeyolrAZ4xuFwg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuY6xyKXEeyolrAZ4xuFwg" id="(0.5084745762711864,1.0)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_TuY6yCKXEeyolrAZ4xuFwg" type="4001" element="_TuV3cyKXEeyolrAZ4xuFwg" source="_TuWehyKXEeyolrAZ4xuFwg" target="_TuXFmiKXEeyolrAZ4xuFwg">
<children xmi:type="notation:Node" xmi:id="_TuY6zCKXEeyolrAZ4xuFwg" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuY6zSKXEeyolrAZ4xuFwg" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuY6ziKXEeyolrAZ4xuFwg" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuY6zyKXEeyolrAZ4xuFwg" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_TuY60CKXEeyolrAZ4xuFwg" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TuY60SKXEeyolrAZ4xuFwg" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_TuY6ySKXEeyolrAZ4xuFwg" routing="Tree"/>
<styles xmi:type="notation:FontStyle" xmi:id="_TuY6yiKXEeyolrAZ4xuFwg" fontName="Ubuntu" fontHeight="8"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TuY6yyKXEeyolrAZ4xuFwg" points="[-1, 0, 96, 380]$[-2, -320, 95, 60]$[-98, -380, -1, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuY60iKXEeyolrAZ4xuFwg" id="(0.5084745762711864,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TuY60yKXEeyolrAZ4xuFwg" id="(0.5084745762711864,1.0)"/>
</edges>
</data>
</ownedAnnotationEntries>
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_Th4IwyKXEeyolrAZ4xuFwg" source="DANNOTATION_CUSTOMIZATION_KEY">
<data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_Th4IxCKXEeyolrAZ4xuFwg">
<computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_TuS0IyKXEeyolrAZ4xuFwg" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
<borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelFormat>bold</labelFormat>
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</computedStyleDescriptions>
<computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_TuUpWCKXEeyolrAZ4xuFwg" routingStyle="manhattan">
<strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_TuUpWSKXEeyolrAZ4xuFwg" showIcon="false" labelExpression="service:render">
<labelFormat>bold</labelFormat>
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</centerLabelStyleDescription>
<endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_TuUpWiKXEeyolrAZ4xuFwg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
</endLabelStyleDescription>
</computedStyleDescriptions>
<computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_TuVQZCKXEeyolrAZ4xuFwg" sourceArrow="FillDiamond" routingStyle="manhattan">
<strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_TuVQZSKXEeyolrAZ4xuFwg" showIcon="false" labelExpression="service:render">
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</centerLabelStyleDescription>
<endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_TuVQZiKXEeyolrAZ4xuFwg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
<labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
</endLabelStyleDescription>
</computedStyleDescriptions>
</data>
</ownedAnnotationEntries>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_TuPJwCKXEeyolrAZ4xuFwg" name="Place" tooltipText="" outgoingEdges="_TuVQbSKXEeyolrAZ4xuFwg" incomingEdges="_TuUpVyKXEeyolrAZ4xuFwg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_TuPJwSKXEeyolrAZ4xuFwg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_TuS0IiKXEeyolrAZ4xuFwg" name="jetons : EInt" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Place/jetons"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Place/jetons"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_TuS0JCKXEeyolrAZ4xuFwg" labelAlignment="LEFT" description="_TuS0IyKXEeyolrAZ4xuFwg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_TuPw0SKXEeyolrAZ4xuFwg" name="Transition" tooltipText="" outgoingEdges="_TuUpUCKXEeyolrAZ4xuFwg _TuV3cyKXEeyolrAZ4xuFwg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_TuPw0iKXEeyolrAZ4xuFwg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_TuPw1CKXEeyolrAZ4xuFwg" name="Flèche" tooltipText="" outgoingEdges="_TuUpVyKXEeyolrAZ4xuFwg" incomingEdges="_TuUpUCKXEeyolrAZ4xuFwg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Flèche"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Flèche"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_TuQX4CKXEeyolrAZ4xuFwg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_TuTbMCKXEeyolrAZ4xuFwg" name="poids : EInt" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Flèche/poids"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Flèche/poids"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_TuTbMSKXEeyolrAZ4xuFwg" labelAlignment="LEFT" description="_TuS0IyKXEeyolrAZ4xuFwg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_TuTbMiKXEeyolrAZ4xuFwg" name="sortant : EBoolean = false" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Flèche/sortant"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Flèche/sortant"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_TuTbMyKXEeyolrAZ4xuFwg" labelAlignment="LEFT" description="_TuS0IyKXEeyolrAZ4xuFwg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_TuQX4iKXEeyolrAZ4xuFwg" name="Noeud" tooltipText="" incomingEdges="_TuVQYyKXEeyolrAZ4xuFwg _TuVQbSKXEeyolrAZ4xuFwg _TuV3cyKXEeyolrAZ4xuFwg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Noeud"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Noeud"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_TuQX4yKXEeyolrAZ4xuFwg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
<labelFormat>italic</labelFormat>
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_TuTbNCKXEeyolrAZ4xuFwg" name="name : EString" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Noeud/name"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Noeud/name"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_TuUCQCKXEeyolrAZ4xuFwg" labelAlignment="LEFT" description="_TuS0IyKXEeyolrAZ4xuFwg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNodeList" uid="_TuQX5SKXEeyolrAZ4xuFwg" name="Reseau" tooltipText="" outgoingEdges="_TuVQYyKXEeyolrAZ4xuFwg" width="12" height="10">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Reseau"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Reseau"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_TuQX5iKXEeyolrAZ4xuFwg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
<description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
<ownedElements xmi:type="diagram:DNodeListElement" uid="_TuUCQSKXEeyolrAZ4xuFwg" name="name : EString" tooltipText="">
<target xmi:type="ecore:EAttribute" href="petriNet.ecore#//Reseau/name"/>
<semanticElements xmi:type="ecore:EAttribute" href="petriNet.ecore#//Reseau/name"/>
<ownedStyle xmi:type="diagram:BundledImage" uid="_TuUCQiKXEeyolrAZ4xuFwg" labelAlignment="LEFT" description="_TuS0IyKXEeyolrAZ4xuFwg">
<labelFormat>bold</labelFormat>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
</ownedElements>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_TuUpUCKXEeyolrAZ4xuFwg" name="[0..*] fleches" sourceNode="_TuPw0SKXEeyolrAZ4xuFwg" targetNode="_TuPw1CKXEeyolrAZ4xuFwg">
<target xmi:type="ecore:EReference" href="petriNet.ecore#//Transition/fleches"/>
<semanticElements xmi:type="ecore:EReference" href="petriNet.ecore#//Transition/fleches"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_TuUpUSKXEeyolrAZ4xuFwg" routingStyle="manhattan" strokeColor="0,0,0">
<description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_TuUpUyKXEeyolrAZ4xuFwg" showIcon="false">
<customFeatures>labelSize</customFeatures>
</centerLabelStyle>
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_TuUpUiKXEeyolrAZ4xuFwg" showIcon="false" labelColor="39,76,114">
<customFeatures>labelSize</customFeatures>
</endLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_TuUpVyKXEeyolrAZ4xuFwg" name="[1..1] cible" sourceNode="_TuPw1CKXEeyolrAZ4xuFwg" targetNode="_TuPJwCKXEeyolrAZ4xuFwg">
<target xmi:type="ecore:EReference" href="petriNet.ecore#//Flèche/cible"/>
<semanticElements xmi:type="ecore:EReference" href="petriNet.ecore#//Flèche/cible"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_TuUpWyKXEeyolrAZ4xuFwg" description="_TuUpWCKXEeyolrAZ4xuFwg" routingStyle="manhattan" strokeColor="0,0,0">
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_TuUpXSKXEeyolrAZ4xuFwg" showIcon="false">
<customFeatures>labelSize</customFeatures>
</centerLabelStyle>
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_TuUpXCKXEeyolrAZ4xuFwg" showIcon="false" labelColor="39,76,114">
<customFeatures>labelSize</customFeatures>
</endLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_TuVQYyKXEeyolrAZ4xuFwg" name="[0..*] noeuds" sourceNode="_TuQX5SKXEeyolrAZ4xuFwg" targetNode="_TuQX4iKXEeyolrAZ4xuFwg">
<target xmi:type="ecore:EReference" href="petriNet.ecore#//Reseau/noeuds"/>
<semanticElements xmi:type="ecore:EReference" href="petriNet.ecore#//Reseau/noeuds"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_TuVQZyKXEeyolrAZ4xuFwg" description="_TuVQZCKXEeyolrAZ4xuFwg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_TuVQaSKXEeyolrAZ4xuFwg" showIcon="false">
<customFeatures>labelSize</customFeatures>
</centerLabelStyle>
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_TuVQaCKXEeyolrAZ4xuFwg" showIcon="false" labelColor="39,76,114">
<customFeatures>labelSize</customFeatures>
</endLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_TuVQbSKXEeyolrAZ4xuFwg" sourceNode="_TuPJwCKXEeyolrAZ4xuFwg" targetNode="_TuQX4iKXEeyolrAZ4xuFwg">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_TuVQbiKXEeyolrAZ4xuFwg" targetArrow="InputClosedArrow" routingStyle="tree">
<description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
<beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_TuVQbyKXEeyolrAZ4xuFwg" showIcon="false">
<labelFormat>italic</labelFormat>
</beginLabelStyle>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_TuVQcCKXEeyolrAZ4xuFwg" showIcon="false"/>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_TuV3cyKXEeyolrAZ4xuFwg" sourceNode="_TuPw0SKXEeyolrAZ4xuFwg" targetNode="_TuQX4iKXEeyolrAZ4xuFwg">
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_TuV3dCKXEeyolrAZ4xuFwg" targetArrow="InputClosedArrow" routingStyle="tree">
<description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
<beginLabelStyle xmi:type="diagram:BeginLabelStyle" uid="_TuV3dSKXEeyolrAZ4xuFwg" showIcon="false">
<labelFormat>italic</labelFormat>
</beginLabelStyle>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_TuV3diKXEeyolrAZ4xuFwg" showIcon="false"/>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
</ownedDiagramElements>
<description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
<filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_Th26oCKXEeyolrAZ4xuFwg"/>
<activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
<activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/>
<activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/>
<activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']/@ownedRepresentationExtensions[name='Entities%20With%20Archetypes']/@layers[name='Archetypes']"/>
<target xmi:type="ecore:EPackage" href="petriNet.ecore#/"/>
</diagram:DSemanticDiagram>
</xmi:XMI>

View file

@ -1,225 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import simplepdl.Request;
import simplepdl.Resource;
import simplepdl.SimplepdlPackage;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Request</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link simplepdl.impl.RequestImpl#getQuantity <em>Quantity</em>}</li>
* <li>{@link simplepdl.impl.RequestImpl#getTarget <em>Target</em>}</li>
* </ul>
*
* @generated
*/
public class RequestImpl extends MinimalEObjectImpl.Container implements Request {
/**
* The default value of the '{@link #getQuantity() <em>Quantity</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getQuantity()
* @generated
* @ordered
*/
protected static final int QUANTITY_EDEFAULT = 0;
/**
* The cached value of the '{@link #getQuantity() <em>Quantity</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getQuantity()
* @generated
* @ordered
*/
protected int quantity = QUANTITY_EDEFAULT;
/**
* The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getTarget()
* @generated
* @ordered
*/
protected Resource target;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected RequestImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.REQUEST;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public int getQuantity() {
return quantity;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setQuantity(int newQuantity) {
int oldQuantity = quantity;
quantity = newQuantity;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.REQUEST__QUANTITY, oldQuantity, quantity));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Resource getTarget() {
if (target != null && target.eIsProxy()) {
InternalEObject oldTarget = (InternalEObject)target;
target = (Resource)eResolveProxy(oldTarget);
if (target != oldTarget) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, SimplepdlPackage.REQUEST__TARGET, oldTarget, target));
}
}
return target;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Resource basicGetTarget() {
return target;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setTarget(Resource newTarget) {
Resource oldTarget = target;
target = newTarget;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.REQUEST__TARGET, oldTarget, target));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SimplepdlPackage.REQUEST__QUANTITY:
return getQuantity();
case SimplepdlPackage.REQUEST__TARGET:
if (resolve) return getTarget();
return basicGetTarget();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case SimplepdlPackage.REQUEST__QUANTITY:
setQuantity((Integer)newValue);
return;
case SimplepdlPackage.REQUEST__TARGET:
setTarget((Resource)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case SimplepdlPackage.REQUEST__QUANTITY:
setQuantity(QUANTITY_EDEFAULT);
return;
case SimplepdlPackage.REQUEST__TARGET:
setTarget((Resource)null);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case SimplepdlPackage.REQUEST__QUANTITY:
return quantity != QUANTITY_EDEFAULT;
case SimplepdlPackage.REQUEST__TARGET:
return target != null;
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (quantity: ");
result.append(quantity);
result.append(')');
return result.toString();
}
} //RequestImpl

View file

@ -1,391 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.impl.EPackageImpl;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Package</b>.
* <!-- end-user-doc -->
* @generated
*/
public class SimplepdlPackageImpl extends EPackageImpl implements SimplepdlPackage {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass processElementEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass workDefinitionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass workSequenceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass guidanceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass processEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum workSequenceTypeEEnum = null;
/**
* Creates an instance of the model <b>Package</b>, registered with
* {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
* package URI value.
* <p>Note: the correct way to create the package is via the static
* factory method {@link #init init()}, which also performs
* initialization of the package, or returns the registered package,
* if one already exists.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see org.eclipse.emf.ecore.EPackage.Registry
* @see simplepdl.SimplepdlPackage#eNS_URI
* @see #init()
* @generated
*/
private SimplepdlPackageImpl() {
super(eNS_URI, SimplepdlFactory.eINSTANCE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static boolean isInited = false;
/**
* Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
*
* <p>This method is used to initialize {@link SimplepdlPackage#eINSTANCE} when that field is accessed.
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #eNS_URI
* @see #createPackageContents()
* @see #initializePackageContents()
* @generated
*/
public static SimplepdlPackage init() {
if (isInited) return (SimplepdlPackage)EPackage.Registry.INSTANCE.getEPackage(SimplepdlPackage.eNS_URI);
// Obtain or create and register package
Object registeredSimplepdlPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
SimplepdlPackageImpl theSimplepdlPackage = registeredSimplepdlPackage instanceof SimplepdlPackageImpl ? (SimplepdlPackageImpl)registeredSimplepdlPackage : new SimplepdlPackageImpl();
isInited = true;
// Create package meta-data objects
theSimplepdlPackage.createPackageContents();
// Initialize created meta-data
theSimplepdlPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theSimplepdlPackage.freeze();
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(SimplepdlPackage.eNS_URI, theSimplepdlPackage);
return theSimplepdlPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getProcessElement() {
return processElementEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getWorkDefinition() {
return workDefinitionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_LinksToPredecessors() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_LinksToSuccessors() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getWorkDefinition_Name() {
return (EAttribute)workDefinitionEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getWorkSequence() {
return workSequenceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getWorkSequence_LinkType() {
return (EAttribute)workSequenceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkSequence_Predecessor() {
return (EReference)workSequenceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkSequence_Successor() {
return (EReference)workSequenceEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getGuidance() {
return guidanceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getGuidance_Text() {
return (EAttribute)guidanceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getGuidance_Elements() {
return (EReference)guidanceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getProcess() {
return processEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getProcess_Name() {
return (EAttribute)processEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getProcess_ProcessElements() {
return (EReference)processEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EEnum getWorkSequenceType() {
return workSequenceTypeEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlFactory getSimplepdlFactory() {
return (SimplepdlFactory)getEFactoryInstance();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isCreated = false;
/**
* Creates the meta-model objects for the package. This method is
* guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void createPackageContents() {
if (isCreated) return;
isCreated = true;
// Create classes and their features
processElementEClass = createEClass(PROCESS_ELEMENT);
workDefinitionEClass = createEClass(WORK_DEFINITION);
createEReference(workDefinitionEClass, WORK_DEFINITION__LINKS_TO_PREDECESSORS);
createEReference(workDefinitionEClass, WORK_DEFINITION__LINKS_TO_SUCCESSORS);
createEAttribute(workDefinitionEClass, WORK_DEFINITION__NAME);
workSequenceEClass = createEClass(WORK_SEQUENCE);
createEAttribute(workSequenceEClass, WORK_SEQUENCE__LINK_TYPE);
createEReference(workSequenceEClass, WORK_SEQUENCE__PREDECESSOR);
createEReference(workSequenceEClass, WORK_SEQUENCE__SUCCESSOR);
guidanceEClass = createEClass(GUIDANCE);
createEAttribute(guidanceEClass, GUIDANCE__TEXT);
createEReference(guidanceEClass, GUIDANCE__ELEMENTS);
processEClass = createEClass(PROCESS);
createEAttribute(processEClass, PROCESS__NAME);
createEReference(processEClass, PROCESS__PROCESS_ELEMENTS);
// Create enums
workSequenceTypeEEnum = createEEnum(WORK_SEQUENCE_TYPE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isInitialized = false;
/**
* Complete the initialization of the package and its meta-model. This
* method is guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void initializePackageContents() {
if (isInitialized) return;
isInitialized = true;
// Initialize package
setName(eNAME);
setNsPrefix(eNS_PREFIX);
setNsURI(eNS_URI);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
workDefinitionEClass.getESuperTypes().add(this.getProcessElement());
workSequenceEClass.getESuperTypes().add(this.getProcessElement());
guidanceEClass.getESuperTypes().add(this.getProcessElement());
// Initialize classes, features, and operations; add parameters
initEClass(processElementEClass, ProcessElement.class, "ProcessElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(workDefinitionEClass, WorkDefinition.class, "WorkDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getWorkDefinition_LinksToPredecessors(), this.getWorkSequence(), this.getWorkSequence_Successor(), "linksToPredecessors", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkDefinition_LinksToSuccessors(), this.getWorkSequence(), this.getWorkSequence_Predecessor(), "linksToSuccessors", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getWorkDefinition_Name(), ecorePackage.getEString(), "name", null, 1, 1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(workSequenceEClass, WorkSequence.class, "WorkSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getWorkSequence_LinkType(), this.getWorkSequenceType(), "linkType", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkSequence_Predecessor(), this.getWorkDefinition(), this.getWorkDefinition_LinksToSuccessors(), "predecessor", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkSequence_Successor(), this.getWorkDefinition(), this.getWorkDefinition_LinksToPredecessors(), "successor", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(guidanceEClass, Guidance.class, "Guidance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getGuidance_Text(), ecorePackage.getEString(), "text", null, 1, 1, Guidance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getGuidance_Elements(), this.getProcessElement(), null, "elements", null, 0, -1, Guidance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(processEClass, simplepdl.Process.class, "Process", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getProcess_Name(), ecorePackage.getEString(), "name", null, 1, 1, simplepdl.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getProcess_ProcessElements(), this.getProcessElement(), null, "processElements", null, 0, -1, simplepdl.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(workSequenceTypeEEnum, WorkSequenceType.class, "WorkSequenceType");
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START_TO_START);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH_TO_START);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START_TO_FINISH);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH_TO_FINISH);
// Create resource
createResource(eNS_URI);
}
} //SimplepdlPackageImpl

View file

@ -1,310 +0,0 @@
/**
*/
package simplepdl.impl;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
import org.eclipse.emf.ecore.util.InternalEList;
import simplepdl.Request;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Work Definition</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getLinksToPredecessors <em>Links To Predecessors</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getLinksToSuccessors <em>Links To Successors</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getName <em>Name</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getRequests <em>Requests</em>}</li>
* </ul>
*
* @generated
*/
public class WorkDefinitionImpl extends ProcessElementImpl implements WorkDefinition {
/**
* The cached value of the '{@link #getLinksToPredecessors() <em>Links To Predecessors</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinksToPredecessors()
* @generated
* @ordered
*/
protected EList<WorkSequence> linksToPredecessors;
/**
* The cached value of the '{@link #getLinksToSuccessors() <em>Links To Successors</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinksToSuccessors()
* @generated
* @ordered
*/
protected EList<WorkSequence> linksToSuccessors;
/**
* The default value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getName()
* @generated
* @ordered
*/
protected static final String NAME_EDEFAULT = null;
/**
* The cached value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getName()
* @generated
* @ordered
*/
protected String name = NAME_EDEFAULT;
/**
* The cached value of the '{@link #getRequests() <em>Requests</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getRequests()
* @generated
* @ordered
*/
protected EList<Request> requests;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected WorkDefinitionImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.WORK_DEFINITION;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<WorkSequence> getLinksToPredecessors() {
if (linksToPredecessors == null) {
linksToPredecessors = new EObjectWithInverseResolvingEList<WorkSequence>(WorkSequence.class, this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS, SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR);
}
return linksToPredecessors;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<WorkSequence> getLinksToSuccessors() {
if (linksToSuccessors == null) {
linksToSuccessors = new EObjectWithInverseResolvingEList<WorkSequence>(WorkSequence.class, this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS, SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR);
}
return linksToSuccessors;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setName(String newName) {
String oldName = name;
name = newName;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_DEFINITION__NAME, oldName, name));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Request> getRequests() {
if (requests == null) {
requests = new EObjectResolvingEList<Request>(Request.class, this, SimplepdlPackage.WORK_DEFINITION__REQUESTS);
}
return requests;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getLinksToPredecessors()).basicAdd(otherEnd, msgs);
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getLinksToSuccessors()).basicAdd(otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return ((InternalEList<?>)getLinksToPredecessors()).basicRemove(otherEnd, msgs);
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return ((InternalEList<?>)getLinksToSuccessors()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return getLinksToPredecessors();
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return getLinksToSuccessors();
case SimplepdlPackage.WORK_DEFINITION__NAME:
return getName();
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
return getRequests();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
getLinksToPredecessors().clear();
getLinksToPredecessors().addAll((Collection<? extends WorkSequence>)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
getLinksToSuccessors().clear();
getLinksToSuccessors().addAll((Collection<? extends WorkSequence>)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__NAME:
setName((String)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
getRequests().clear();
getRequests().addAll((Collection<? extends Request>)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
getLinksToPredecessors().clear();
return;
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
getLinksToSuccessors().clear();
return;
case SimplepdlPackage.WORK_DEFINITION__NAME:
setName(NAME_EDEFAULT);
return;
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
getRequests().clear();
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return linksToPredecessors != null && !linksToPredecessors.isEmpty();
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return linksToSuccessors != null && !linksToSuccessors.isEmpty();
case SimplepdlPackage.WORK_DEFINITION__NAME:
return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
return requests != null && !requests.isEmpty();
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: ");
result.append(name);
result.append(')');
return result.toString();
}
} //WorkDefinitionImpl

View file

@ -1,489 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.impl.EPackageImpl;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.Request;
import simplepdl.Resource;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Package</b>.
* <!-- end-user-doc -->
* @generated
*/
public class SimplepdlPackageImpl extends EPackageImpl implements SimplepdlPackage {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass processElementEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass workDefinitionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass workSequenceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass guidanceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass processEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass requestEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass resourceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum workSequenceTypeEEnum = null;
/**
* Creates an instance of the model <b>Package</b>, registered with
* {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
* package URI value.
* <p>Note: the correct way to create the package is via the static
* factory method {@link #init init()}, which also performs
* initialization of the package, or returns the registered package,
* if one already exists.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see org.eclipse.emf.ecore.EPackage.Registry
* @see simplepdl.SimplepdlPackage#eNS_URI
* @see #init()
* @generated
*/
private SimplepdlPackageImpl() {
super(eNS_URI, SimplepdlFactory.eINSTANCE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static boolean isInited = false;
/**
* Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
*
* <p>This method is used to initialize {@link SimplepdlPackage#eINSTANCE} when that field is accessed.
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #eNS_URI
* @see #createPackageContents()
* @see #initializePackageContents()
* @generated
*/
public static SimplepdlPackage init() {
if (isInited) return (SimplepdlPackage)EPackage.Registry.INSTANCE.getEPackage(SimplepdlPackage.eNS_URI);
// Obtain or create and register package
Object registeredSimplepdlPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
SimplepdlPackageImpl theSimplepdlPackage = registeredSimplepdlPackage instanceof SimplepdlPackageImpl ? (SimplepdlPackageImpl)registeredSimplepdlPackage : new SimplepdlPackageImpl();
isInited = true;
// Create package meta-data objects
theSimplepdlPackage.createPackageContents();
// Initialize created meta-data
theSimplepdlPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theSimplepdlPackage.freeze();
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(SimplepdlPackage.eNS_URI, theSimplepdlPackage);
return theSimplepdlPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getProcessElement() {
return processElementEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getWorkDefinition() {
return workDefinitionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_LinksToPredecessors() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_LinksToSuccessors() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getWorkDefinition_Name() {
return (EAttribute)workDefinitionEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_Requests() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getWorkSequence() {
return workSequenceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getWorkSequence_LinkType() {
return (EAttribute)workSequenceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkSequence_Predecessor() {
return (EReference)workSequenceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkSequence_Successor() {
return (EReference)workSequenceEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getGuidance() {
return guidanceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getGuidance_Text() {
return (EAttribute)guidanceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getGuidance_Elements() {
return (EReference)guidanceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getProcess() {
return processEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getProcess_Name() {
return (EAttribute)processEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getProcess_ProcessElements() {
return (EReference)processEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getRequest() {
return requestEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getRequest_Quantity() {
return (EAttribute)requestEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getRequest_Target() {
return (EReference)requestEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getResource() {
return resourceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getResource_Quantity() {
return (EAttribute)resourceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getResource_Name() {
return (EAttribute)resourceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EEnum getWorkSequenceType() {
return workSequenceTypeEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlFactory getSimplepdlFactory() {
return (SimplepdlFactory)getEFactoryInstance();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isCreated = false;
/**
* Creates the meta-model objects for the package. This method is
* guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void createPackageContents() {
if (isCreated) return;
isCreated = true;
// Create classes and their features
processElementEClass = createEClass(PROCESS_ELEMENT);
workDefinitionEClass = createEClass(WORK_DEFINITION);
createEReference(workDefinitionEClass, WORK_DEFINITION__LINKS_TO_PREDECESSORS);
createEReference(workDefinitionEClass, WORK_DEFINITION__LINKS_TO_SUCCESSORS);
createEAttribute(workDefinitionEClass, WORK_DEFINITION__NAME);
createEReference(workDefinitionEClass, WORK_DEFINITION__REQUESTS);
workSequenceEClass = createEClass(WORK_SEQUENCE);
createEAttribute(workSequenceEClass, WORK_SEQUENCE__LINK_TYPE);
createEReference(workSequenceEClass, WORK_SEQUENCE__PREDECESSOR);
createEReference(workSequenceEClass, WORK_SEQUENCE__SUCCESSOR);
guidanceEClass = createEClass(GUIDANCE);
createEAttribute(guidanceEClass, GUIDANCE__TEXT);
createEReference(guidanceEClass, GUIDANCE__ELEMENTS);
processEClass = createEClass(PROCESS);
createEAttribute(processEClass, PROCESS__NAME);
createEReference(processEClass, PROCESS__PROCESS_ELEMENTS);
requestEClass = createEClass(REQUEST);
createEAttribute(requestEClass, REQUEST__QUANTITY);
createEReference(requestEClass, REQUEST__TARGET);
resourceEClass = createEClass(RESOURCE);
createEAttribute(resourceEClass, RESOURCE__QUANTITY);
createEAttribute(resourceEClass, RESOURCE__NAME);
// Create enums
workSequenceTypeEEnum = createEEnum(WORK_SEQUENCE_TYPE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isInitialized = false;
/**
* Complete the initialization of the package and its meta-model. This
* method is guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void initializePackageContents() {
if (isInitialized) return;
isInitialized = true;
// Initialize package
setName(eNAME);
setNsPrefix(eNS_PREFIX);
setNsURI(eNS_URI);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
workDefinitionEClass.getESuperTypes().add(this.getProcessElement());
workSequenceEClass.getESuperTypes().add(this.getProcessElement());
guidanceEClass.getESuperTypes().add(this.getProcessElement());
resourceEClass.getESuperTypes().add(this.getProcessElement());
// Initialize classes, features, and operations; add parameters
initEClass(processElementEClass, ProcessElement.class, "ProcessElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(workDefinitionEClass, WorkDefinition.class, "WorkDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getWorkDefinition_LinksToPredecessors(), this.getWorkSequence(), this.getWorkSequence_Successor(), "linksToPredecessors", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkDefinition_LinksToSuccessors(), this.getWorkSequence(), this.getWorkSequence_Predecessor(), "linksToSuccessors", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getWorkDefinition_Name(), ecorePackage.getEString(), "name", null, 1, 1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkDefinition_Requests(), this.getRequest(), null, "requests", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(workSequenceEClass, WorkSequence.class, "WorkSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getWorkSequence_LinkType(), this.getWorkSequenceType(), "linkType", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkSequence_Predecessor(), this.getWorkDefinition(), this.getWorkDefinition_LinksToSuccessors(), "predecessor", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkSequence_Successor(), this.getWorkDefinition(), this.getWorkDefinition_LinksToPredecessors(), "successor", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(guidanceEClass, Guidance.class, "Guidance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getGuidance_Text(), ecorePackage.getEString(), "text", null, 1, 1, Guidance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getGuidance_Elements(), this.getProcessElement(), null, "elements", null, 0, -1, Guidance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(processEClass, simplepdl.Process.class, "Process", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getProcess_Name(), ecorePackage.getEString(), "name", null, 1, 1, simplepdl.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getProcess_ProcessElements(), this.getProcessElement(), null, "processElements", null, 0, -1, simplepdl.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(requestEClass, Request.class, "Request", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getRequest_Quantity(), ecorePackage.getEInt(), "quantity", null, 1, 1, Request.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getRequest_Target(), this.getResource(), null, "target", null, 1, 1, Request.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(resourceEClass, Resource.class, "Resource", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getResource_Quantity(), ecorePackage.getEInt(), "quantity", null, 1, 1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getResource_Name(), ecorePackage.getEString(), "name", null, 1, 1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(workSequenceTypeEEnum, WorkSequenceType.class, "WorkSequenceType");
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START_TO_START);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH_TO_START);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START_TO_FINISH);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH_TO_FINISH);
// Create resource
createResource(eNS_URI);
}
} //SimplepdlPackageImpl

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<petrinet:Reseau xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:petrinet="http://petrinet">
<noeuds xsi:type="petrinet:Place" name="startplace"/>
<noeuds xsi:type="petrinet:Transition" name="starttofinish">
<arcs poids="1" cible="//@noeuds.0"/>
<arcs poids="2" sortant="true" cible="//@noeuds.2"/>
</noeuds>
<noeuds xsi:type="petrinet:Place" name="endplace"/>
</petrinet:Reseau>

View file

@ -0,0 +1,48 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,69 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Request</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.Request#getQuantity <em>Quantity</em>}</li>
* <li>{@link simplepdl.Request#getTarget <em>Target</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getRequest()
* @model
* @generated
*/
public interface Request extends EObject {
/**
* Returns the value of the '<em><b>Quantity</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Quantity</em>' attribute.
* @see #setQuantity(int)
* @see simplepdl.SimplepdlPackage#getRequest_Quantity()
* @model required="true"
* @generated
*/
int getQuantity();
/**
* Sets the value of the '{@link simplepdl.Request#getQuantity <em>Quantity</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Quantity</em>' attribute.
* @see #getQuantity()
* @generated
*/
void setQuantity(int value);
/**
* Returns the value of the '<em><b>Target</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Target</em>' reference.
* @see #setTarget(Resource)
* @see simplepdl.SimplepdlPackage#getRequest_Target()
* @model required="true"
* @generated
*/
Resource getTarget();
/**
* Sets the value of the '{@link simplepdl.Request#getTarget <em>Target</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Target</em>' reference.
* @see #getTarget()
* @generated
*/
void setTarget(Resource value);
} // Request

View file

@ -1,89 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Work Definition</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getName <em>Name</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getRequests <em>Requests</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getWorkDefinition()
* @model
* @generated
*/
public interface WorkDefinition extends ProcessElement {
/**
* Returns the value of the '<em><b>Links To Predecessors</b></em>' reference list.
* The list contents are of type {@link simplepdl.WorkSequence}.
* It is bidirectional and its opposite is '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Links To Predecessors</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_LinksToPredecessors()
* @see simplepdl.WorkSequence#getSuccessor
* @model opposite="successor"
* @generated
*/
EList<WorkSequence> getLinksToPredecessors();
/**
* Returns the value of the '<em><b>Links To Successors</b></em>' reference list.
* The list contents are of type {@link simplepdl.WorkSequence}.
* It is bidirectional and its opposite is '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Links To Successors</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_LinksToSuccessors()
* @see simplepdl.WorkSequence#getPredecessor
* @model opposite="predecessor"
* @generated
*/
EList<WorkSequence> getLinksToSuccessors();
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see simplepdl.SimplepdlPackage#getWorkDefinition_Name()
* @model required="true"
* @generated
*/
String getName();
/**
* Sets the value of the '{@link simplepdl.WorkDefinition#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the '<em><b>Requests</b></em>' reference list.
* The list contents are of type {@link simplepdl.Request}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Requests</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_Requests()
* @model
* @generated
*/
EList<Request> getRequests();
} // WorkDefinition

View file

@ -1,489 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.impl.EPackageImpl;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.Request;
import simplepdl.Resource;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Package</b>.
* <!-- end-user-doc -->
* @generated
*/
public class SimplepdlPackageImpl extends EPackageImpl implements SimplepdlPackage {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass processElementEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass workDefinitionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass workSequenceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass guidanceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass processEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass requestEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass resourceEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum workSequenceTypeEEnum = null;
/**
* Creates an instance of the model <b>Package</b>, registered with
* {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
* package URI value.
* <p>Note: the correct way to create the package is via the static
* factory method {@link #init init()}, which also performs
* initialization of the package, or returns the registered package,
* if one already exists.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see org.eclipse.emf.ecore.EPackage.Registry
* @see simplepdl.SimplepdlPackage#eNS_URI
* @see #init()
* @generated
*/
private SimplepdlPackageImpl() {
super(eNS_URI, SimplepdlFactory.eINSTANCE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static boolean isInited = false;
/**
* Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
*
* <p>This method is used to initialize {@link SimplepdlPackage#eINSTANCE} when that field is accessed.
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #eNS_URI
* @see #createPackageContents()
* @see #initializePackageContents()
* @generated
*/
public static SimplepdlPackage init() {
if (isInited) return (SimplepdlPackage)EPackage.Registry.INSTANCE.getEPackage(SimplepdlPackage.eNS_URI);
// Obtain or create and register package
Object registeredSimplepdlPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
SimplepdlPackageImpl theSimplepdlPackage = registeredSimplepdlPackage instanceof SimplepdlPackageImpl ? (SimplepdlPackageImpl)registeredSimplepdlPackage : new SimplepdlPackageImpl();
isInited = true;
// Create package meta-data objects
theSimplepdlPackage.createPackageContents();
// Initialize created meta-data
theSimplepdlPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theSimplepdlPackage.freeze();
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(SimplepdlPackage.eNS_URI, theSimplepdlPackage);
return theSimplepdlPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getProcessElement() {
return processElementEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getWorkDefinition() {
return workDefinitionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_LinksToPredecessors() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_LinksToSuccessors() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getWorkDefinition_Name() {
return (EAttribute)workDefinitionEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkDefinition_Requests() {
return (EReference)workDefinitionEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getWorkSequence() {
return workSequenceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getWorkSequence_LinkType() {
return (EAttribute)workSequenceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkSequence_Predecessor() {
return (EReference)workSequenceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getWorkSequence_Successor() {
return (EReference)workSequenceEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getGuidance() {
return guidanceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getGuidance_Text() {
return (EAttribute)guidanceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getGuidance_Elements() {
return (EReference)guidanceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getProcess() {
return processEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getProcess_Name() {
return (EAttribute)processEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getProcess_ProcessElements() {
return (EReference)processEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getRequest() {
return requestEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getRequest_Quantity() {
return (EAttribute)requestEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getRequest_Target() {
return (EReference)requestEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getResource() {
return resourceEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getResource_Quantity() {
return (EAttribute)resourceEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getResource_Name() {
return (EAttribute)resourceEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EEnum getWorkSequenceType() {
return workSequenceTypeEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlFactory getSimplepdlFactory() {
return (SimplepdlFactory)getEFactoryInstance();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isCreated = false;
/**
* Creates the meta-model objects for the package. This method is
* guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void createPackageContents() {
if (isCreated) return;
isCreated = true;
// Create classes and their features
processElementEClass = createEClass(PROCESS_ELEMENT);
workDefinitionEClass = createEClass(WORK_DEFINITION);
createEReference(workDefinitionEClass, WORK_DEFINITION__LINKS_TO_PREDECESSORS);
createEReference(workDefinitionEClass, WORK_DEFINITION__LINKS_TO_SUCCESSORS);
createEAttribute(workDefinitionEClass, WORK_DEFINITION__NAME);
createEReference(workDefinitionEClass, WORK_DEFINITION__REQUESTS);
workSequenceEClass = createEClass(WORK_SEQUENCE);
createEAttribute(workSequenceEClass, WORK_SEQUENCE__LINK_TYPE);
createEReference(workSequenceEClass, WORK_SEQUENCE__PREDECESSOR);
createEReference(workSequenceEClass, WORK_SEQUENCE__SUCCESSOR);
guidanceEClass = createEClass(GUIDANCE);
createEAttribute(guidanceEClass, GUIDANCE__TEXT);
createEReference(guidanceEClass, GUIDANCE__ELEMENTS);
processEClass = createEClass(PROCESS);
createEAttribute(processEClass, PROCESS__NAME);
createEReference(processEClass, PROCESS__PROCESS_ELEMENTS);
requestEClass = createEClass(REQUEST);
createEAttribute(requestEClass, REQUEST__QUANTITY);
createEReference(requestEClass, REQUEST__TARGET);
resourceEClass = createEClass(RESOURCE);
createEAttribute(resourceEClass, RESOURCE__QUANTITY);
createEAttribute(resourceEClass, RESOURCE__NAME);
// Create enums
workSequenceTypeEEnum = createEEnum(WORK_SEQUENCE_TYPE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isInitialized = false;
/**
* Complete the initialization of the package and its meta-model. This
* method is guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void initializePackageContents() {
if (isInitialized) return;
isInitialized = true;
// Initialize package
setName(eNAME);
setNsPrefix(eNS_PREFIX);
setNsURI(eNS_URI);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
workDefinitionEClass.getESuperTypes().add(this.getProcessElement());
workSequenceEClass.getESuperTypes().add(this.getProcessElement());
guidanceEClass.getESuperTypes().add(this.getProcessElement());
resourceEClass.getESuperTypes().add(this.getProcessElement());
// Initialize classes, features, and operations; add parameters
initEClass(processElementEClass, ProcessElement.class, "ProcessElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(workDefinitionEClass, WorkDefinition.class, "WorkDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getWorkDefinition_LinksToPredecessors(), this.getWorkSequence(), this.getWorkSequence_Successor(), "linksToPredecessors", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkDefinition_LinksToSuccessors(), this.getWorkSequence(), this.getWorkSequence_Predecessor(), "linksToSuccessors", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getWorkDefinition_Name(), ecorePackage.getEString(), "name", null, 1, 1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkDefinition_Requests(), this.getRequest(), null, "requests", null, 0, -1, WorkDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(workSequenceEClass, WorkSequence.class, "WorkSequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getWorkSequence_LinkType(), this.getWorkSequenceType(), "linkType", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkSequence_Predecessor(), this.getWorkDefinition(), this.getWorkDefinition_LinksToSuccessors(), "predecessor", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getWorkSequence_Successor(), this.getWorkDefinition(), this.getWorkDefinition_LinksToPredecessors(), "successor", null, 1, 1, WorkSequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(guidanceEClass, Guidance.class, "Guidance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getGuidance_Text(), ecorePackage.getEString(), "text", null, 1, 1, Guidance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getGuidance_Elements(), this.getProcessElement(), null, "elements", null, 0, -1, Guidance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(processEClass, simplepdl.Process.class, "Process", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getProcess_Name(), ecorePackage.getEString(), "name", null, 1, 1, simplepdl.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getProcess_ProcessElements(), this.getProcessElement(), null, "processElements", null, 0, -1, simplepdl.Process.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(requestEClass, Request.class, "Request", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getRequest_Quantity(), ecorePackage.getEInt(), "quantity", null, 1, 1, Request.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getRequest_Target(), this.getResource(), null, "target", null, 1, 1, Request.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(resourceEClass, Resource.class, "Resource", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getResource_Quantity(), ecorePackage.getEInt(), "quantity", null, 1, 1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getResource_Name(), ecorePackage.getEString(), "name", null, 1, 1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(workSequenceTypeEEnum, WorkSequenceType.class, "WorkSequenceType");
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START_TO_START);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH_TO_START);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.START_TO_FINISH);
addEEnumLiteral(workSequenceTypeEEnum, WorkSequenceType.FINISH_TO_FINISH);
// Create resource
createResource(eNS_URI);
}
} //SimplepdlPackageImpl

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:simplepdl="http://simplepdl"/>

View file

@ -0,0 +1,85 @@
package simplepdl.manip;
import java.io.IOException;
import java.util.Collections;
import java.util.Map;
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.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
import simplepdl.Process;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
public class SimplePDLCreator {
public static void main(String[] args) {
// Charger le package SimplePDL afin de l'enregistrer dans le registre d'Eclipse.
SimplepdlPackage packageInstance = SimplepdlPackage.eINSTANCE;
// Enregistrer l'extension ".xmi" comme devant être ouverte à
// l'aide d'un objet "XMIResourceFactoryImpl"
Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE;
Map<String, Object> m = reg.getExtensionToFactoryMap();
m.put("xmi", new XMIResourceFactoryImpl());
// Créer un objet resourceSetImpl qui contiendra une ressource EMF (le modèle)
ResourceSet resSet = new ResourceSetImpl();
// Définir la ressource (le modèle)
URI modelURI = URI.createURI("models/SimplePDLCreator_Created_Process.xmi");
Resource resource = resSet.createResource(modelURI);
// La fabrique pour fabriquer les éléments de SimplePDL
SimplepdlFactory myFactory = SimplepdlFactory.eINSTANCE;
// Créer un élément Process
Process process = myFactory.createProcess();
process.setName("Mon premier processus");
// Ajouter le Process dans le modèle
resource.getContents().add(process);
// Ajouter deux WorkDefinitions
WorkDefinition wd1 = myFactory.createWorkDefinition();
wd1.setName("Ma première WorkDefinition, quelle émotion (ntm fdp)");
WorkDefinition wd2 = myFactory.createWorkDefinition();
wd2.setName("Ma deuxième WorkDefinition, toujours autant d'émotion");
process.getProcessElements().add(wd1);
process.getProcessElements().add(wd2);
// Ajouter une WorkSequence entre les deux WorkDefinitions
WorkSequence seq = myFactory.createWorkSequence();
seq.setPredecessor(wd1);
seq.setSuccessor(wd2);
seq.setLinkType(WorkSequenceType.FINISH_TO_FINISH);
process.getProcessElements().add(seq);
// Ajouter une deuxième WorkSequence entre les deux WorkDefinitions
WorkSequence seq2 = myFactory.createWorkSequence();
seq2.setPredecessor(wd1);
seq2.setSuccessor(wd2);
seq2.setLinkType(WorkSequenceType.START_TO_START);
process.getProcessElements().add(seq2);
// Sauver la ressource
try {
resource.save(Collections.EMPTY_MAP);
} catch (IOException e) {
e.printStackTrace();
}
}
}

View file

@ -0,0 +1,49 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
--inv errorSeverity: null
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,185 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequence ws = (WorkSequence) object;
WorkSequenceType labelValue = ws.getLinkType();
String label = "--" + (labelValue == null ? "?" : labelValue.toString()) + "-->";
String previous = ws.getPredecessor() == null ? "?" : ws.getPredecessor().getName();
String next = ws.getSuccessor() == null ? "?" : ws.getSuccessor().getName();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + previous + " " + label + " " + next;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -1,89 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Work Definition</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getName <em>Name</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getRequests <em>Requests</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getWorkDefinition()
* @model
* @generated
*/
public interface WorkDefinition extends ProcessElement {
/**
* Returns the value of the '<em><b>Links To Predecessors</b></em>' reference list.
* The list contents are of type {@link simplepdl.WorkSequence}.
* It is bidirectional and its opposite is '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Links To Predecessors</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_LinksToPredecessors()
* @see simplepdl.WorkSequence#getSuccessor
* @model opposite="successor"
* @generated
*/
EList<WorkSequence> getLinksToPredecessors();
/**
* Returns the value of the '<em><b>Links To Successors</b></em>' reference list.
* The list contents are of type {@link simplepdl.WorkSequence}.
* It is bidirectional and its opposite is '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Links To Successors</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_LinksToSuccessors()
* @see simplepdl.WorkSequence#getPredecessor
* @model opposite="predecessor"
* @generated
*/
EList<WorkSequence> getLinksToSuccessors();
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see simplepdl.SimplepdlPackage#getWorkDefinition_Name()
* @model required="true"
* @generated
*/
String getName();
/**
* Sets the value of the '{@link simplepdl.WorkDefinition#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the '<em><b>Requests</b></em>' reference list.
* The list contents are of type {@link simplepdl.Request}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Requests</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_Requests()
* @model
* @generated
*/
EList<Request> getRequests();
} // WorkDefinition

View file

@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="petrinet" nsURI="http://petrinet" nsPrefix="petrinet">
<eClassifiers xsi:type="ecore:EClass" name="Place" eSuperTypes="#//Case">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="jetons" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//Case">
<eStructuralFeatures xsi:type="ecore:EReference" name="fleches" upperBound="-1"
eType="#//Flèche"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Flèche">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="poids" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="sortant" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="cible" lowerBound="1" eType="#//Place"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Case" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>

View file

@ -1,6 +1,6 @@
/** /**
*/ */
package simplepdl.provider; package petrinet.provider;
import java.util.Collection; import java.util.Collection;
@ -22,16 +22,16 @@ import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemProviderAdapter; import org.eclipse.emf.edit.provider.ItemProviderAdapter;
import org.eclipse.emf.edit.provider.ViewerNotification; import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.Request; import petrinet.Arc;
import simplepdl.SimplepdlPackage; import petrinet.PetrinetPackage;
/** /**
* This is the item provider adapter for a {@link simplepdl.Request} object. * This is the item provider adapter for a {@link petrinet.Arc} object.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public class RequestItemProvider public class ArcItemProvider
extends ItemProviderAdapter extends ItemProviderAdapter
implements implements
IEditingDomainItemProvider, IEditingDomainItemProvider,
@ -45,7 +45,7 @@ public class RequestItemProvider
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public RequestItemProvider(AdapterFactory adapterFactory) { public ArcItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory); super(adapterFactory);
} }
@ -60,26 +60,27 @@ public class RequestItemProvider
if (itemPropertyDescriptors == null) { if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object); super.getPropertyDescriptors(object);
addQuantityPropertyDescriptor(object); addPoidsPropertyDescriptor(object);
addTargetPropertyDescriptor(object); addSortantPropertyDescriptor(object);
addCiblePropertyDescriptor(object);
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
/** /**
* This adds a property descriptor for the Quantity feature. * This adds a property descriptor for the Poids feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addQuantityPropertyDescriptor(Object object) { protected void addPoidsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Request_quantity_feature"), getString("_UI_Arc_poids_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_quantity_feature", "_UI_Request_type"), getString("_UI_PropertyDescriptor_description", "_UI_Arc_poids_feature", "_UI_Arc_type"),
SimplepdlPackage.Literals.REQUEST__QUANTITY, PetrinetPackage.Literals.ARC__POIDS,
true, true,
false, false,
false, false,
@ -89,19 +90,41 @@ public class RequestItemProvider
} }
/** /**
* This adds a property descriptor for the Target feature. * This adds a property descriptor for the Sortant feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addTargetPropertyDescriptor(Object object) { protected void addSortantPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Request_target_feature"), getString("_UI_Arc_sortant_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_target_feature", "_UI_Request_type"), getString("_UI_PropertyDescriptor_description", "_UI_Arc_sortant_feature", "_UI_Arc_type"),
SimplepdlPackage.Literals.REQUEST__TARGET, PetrinetPackage.Literals.ARC__SORTANT,
true,
false,
false,
ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Cible feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addCiblePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Arc_cible_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Arc_cible_feature", "_UI_Arc_type"),
PetrinetPackage.Literals.ARC__CIBLE,
true, true,
false, false,
true, true,
@ -111,14 +134,14 @@ public class RequestItemProvider
} }
/** /**
* This returns Request.gif. * This returns Arc.gif.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
@Override @Override
public Object getImage(Object object) { public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/Request")); return overlayImage(object, getResourceLocator().getImage("full/obj16/Arc"));
} }
/** /**
@ -129,8 +152,12 @@ public class RequestItemProvider
*/ */
@Override @Override
public String getText(Object object) { public String getText(Object object) {
Request request = (Request)object; boolean sortant = ((Arc)object).isSortant();
return getString("_UI_Request_type") + " - " + request.getQuantity() + "-> " + request.getTarget().getName(); int poids = ((Arc)object).getPoids();
String cible = ((Arc)object).getCible().getName();
return sortant ?
"--" + poids + "-->" + cible :
"<--" + poids + "--" + cible;
} }
@ -145,8 +172,9 @@ public class RequestItemProvider
public void notifyChanged(Notification notification) { public void notifyChanged(Notification notification) {
updateChildren(notification); updateChildren(notification);
switch (notification.getFeatureID(Request.class)) { switch (notification.getFeatureID(Arc.class)) {
case SimplepdlPackage.REQUEST__QUANTITY: case PetrinetPackage.ARC__POIDS:
case PetrinetPackage.ARC__SORTANT:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return; return;
} }
@ -173,7 +201,7 @@ public class RequestItemProvider
*/ */
@Override @Override
public ResourceLocator getResourceLocator() { public ResourceLocator getResourceLocator() {
return SimplePDLEditPlugin.INSTANCE; return PetriNetEditPlugin.INSTANCE;
} }
} }

View file

@ -1,98 +0,0 @@
/**
*/
package simplepdl;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Work Sequence</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.WorkSequence#getLinkType <em>Link Type</em>}</li>
* <li>{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}</li>
* <li>{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getWorkSequence()
* @model
* @generated
*/
public interface WorkSequence extends ProcessElement {
/**
* Returns the value of the '<em><b>Link Type</b></em>' attribute.
* The literals are from the enumeration {@link simplepdl.WorkSequenceType}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Link Type</em>' attribute.
* @see simplepdl.WorkSequenceType
* @see #setLinkType(WorkSequenceType)
* @see simplepdl.SimplepdlPackage#getWorkSequence_LinkType()
* @model required="true"
* @generated
*/
WorkSequenceType getLinkType();
/**
* Sets the value of the '{@link simplepdl.WorkSequence#getLinkType <em>Link Type</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Link Type</em>' attribute.
* @see simplepdl.WorkSequenceType
* @see #getLinkType()
* @generated
*/
void setLinkType(WorkSequenceType value);
/**
* Returns the value of the '<em><b>Predecessor</b></em>' reference.
* It is bidirectional and its opposite is '{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Predecessor</em>' reference.
* @see #setPredecessor(WorkDefinition)
* @see simplepdl.SimplepdlPackage#getWorkSequence_Predecessor()
* @see simplepdl.WorkDefinition#getLinksToSuccessors
* @model opposite="linksToSuccessors" required="true"
* @generated
*/
WorkDefinition getPredecessor();
/**
* Sets the value of the '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Predecessor</em>' reference.
* @see #getPredecessor()
* @generated
*/
void setPredecessor(WorkDefinition value);
/**
* Returns the value of the '<em><b>Successor</b></em>' reference.
* It is bidirectional and its opposite is '{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Successor</em>' reference.
* @see #setSuccessor(WorkDefinition)
* @see simplepdl.SimplepdlPackage#getWorkSequence_Successor()
* @see simplepdl.WorkDefinition#getLinksToPredecessors
* @model opposite="linksToPredecessors" required="true"
* @generated
*/
WorkDefinition getSuccessor();
/**
* Sets the value of the '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Successor</em>' reference.
* @see #getSuccessor()
* @generated
*/
void setSuccessor(WorkDefinition value);
} // WorkSequence

View file

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:simplepdl="http://simplepdl">
<processElements xsi:type="simplepdl:Resource" quantity="10" name="Crayons"/>
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.4" linksToSuccessors="//@processElements.3" name="a1"/>
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.3" linksToSuccessors="//@processElements.4" name="a2"/>
<processElements xsi:type="simplepdl:WorkSequence" predecessor="//@processElements.1" successor="//@processElements.2"/>
<processElements xsi:type="simplepdl:WorkSequence" linkType="finishToFinish" predecessor="//@processElements.2" successor="//@processElements.1"/>
</simplepdl:Process>

View file

@ -1,196 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.impl.EFactoryImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Factory</b>.
* <!-- end-user-doc -->
* @generated
*/
public class SimplepdlFactoryImpl extends EFactoryImpl implements SimplepdlFactory {
/**
* Creates the default factory implementation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static SimplepdlFactory init() {
try {
SimplepdlFactory theSimplepdlFactory = (SimplepdlFactory)EPackage.Registry.INSTANCE.getEFactory(SimplepdlPackage.eNS_URI);
if (theSimplepdlFactory != null) {
return theSimplepdlFactory;
}
}
catch (Exception exception) {
EcorePlugin.INSTANCE.log(exception);
}
return new SimplepdlFactoryImpl();
}
/**
* Creates an instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlFactoryImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EObject create(EClass eClass) {
switch (eClass.getClassifierID()) {
case SimplepdlPackage.PROCESS_ELEMENT: return createProcessElement();
case SimplepdlPackage.WORK_DEFINITION: return createWorkDefinition();
case SimplepdlPackage.WORK_SEQUENCE: return createWorkSequence();
case SimplepdlPackage.GUIDANCE: return createGuidance();
case SimplepdlPackage.PROCESS: return createProcess();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object createFromString(EDataType eDataType, String initialValue) {
switch (eDataType.getClassifierID()) {
case SimplepdlPackage.WORK_SEQUENCE_TYPE:
return createWorkSequenceTypeFromString(eDataType, initialValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String convertToString(EDataType eDataType, Object instanceValue) {
switch (eDataType.getClassifierID()) {
case SimplepdlPackage.WORK_SEQUENCE_TYPE:
return convertWorkSequenceTypeToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ProcessElement createProcessElement() {
ProcessElementImpl processElement = new ProcessElementImpl();
return processElement;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinition createWorkDefinition() {
WorkDefinitionImpl workDefinition = new WorkDefinitionImpl();
return workDefinition;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequence createWorkSequence() {
WorkSequenceImpl workSequence = new WorkSequenceImpl();
return workSequence;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Guidance createGuidance() {
GuidanceImpl guidance = new GuidanceImpl();
return guidance;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public simplepdl.Process createProcess() {
ProcessImpl process = new ProcessImpl();
return process;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceType createWorkSequenceTypeFromString(EDataType eDataType, String initialValue) {
WorkSequenceType result = WorkSequenceType.get(initialValue);
if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
return result;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertWorkSequenceTypeToString(EDataType eDataType, Object instanceValue) {
return instanceValue == null ? null : instanceValue.toString();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlPackage getSimplepdlPackage() {
return (SimplepdlPackage)getEPackage();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @deprecated
* @generated
*/
@Deprecated
public static SimplepdlPackage getPackage() {
return SimplepdlPackage.eINSTANCE;
}
} //SimplepdlFactoryImpl

View file

@ -0,0 +1,319 @@
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:simplepdl="http://simplepdl" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style">
<viewpoint:DAnalysis uid="_4VhNYCaBEeysd9mJZcvapQ" selectedViews="_82qA0CaCEeysd9mJZcvapQ" version="14.3.1.202003261200">
<semanticResources>developpement.simplepdl</semanticResources>
<ownedViews xmi:type="viewpoint:DView" uid="_82qA0CaCEeysd9mJZcvapQ">
<viewpoint xmi:type="description:Viewpoint" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']"/>
<ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_EnQPUCaDEeysd9mJZcvapQ" name="developpementProcessDiagram" repPath="#_Em64ICaDEeysd9mJZcvapQ" changeId="8413da3f-8718-461a-a019-d60ded0756d3">
<description xmi:type="description_1:DiagramDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']"/>
<target xmi:type="simplepdl:Process" href="developpement.simplepdl#/"/>
</ownedRepresentationDescriptors>
</ownedViews>
</viewpoint:DAnalysis>
<diagram:DSemanticDiagram uid="_Em64ICaDEeysd9mJZcvapQ">
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_EnrtICaDEeysd9mJZcvapQ" source="GMF_DIAGRAMS">
<data xmi:type="notation:Diagram" xmi:id="_EnrtISaDEeysd9mJZcvapQ" type="Sirius" element="_Em64ICaDEeysd9mJZcvapQ" measurementUnit="Pixel">
<children xmi:type="notation:Node" xmi:id="_d2p3ACaDEeysd9mJZcvapQ" type="2001" element="_d1xtQCaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_d2sTQCaDEeysd9mJZcvapQ" type="5002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_d2sTQSaDEeysd9mJZcvapQ" y="5"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2v9oCaDEeysd9mJZcvapQ" type="3016" element="_d11-sCaDEeysd9mJZcvapQ">
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2v9oSaDEeysd9mJZcvapQ" fontName="Ubuntu"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2v9oiaDEeysd9mJZcvapQ"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2p3ASaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2p3AiaDEeysd9mJZcvapQ" x="485" y="55" width="261" height="120"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2thYCaDEeysd9mJZcvapQ" type="2001" element="_d16QICaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_d2uIcCaDEeysd9mJZcvapQ" type="5002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_d2uIcSaDEeysd9mJZcvapQ" y="5"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2wksCaDEeysd9mJZcvapQ" type="3016" element="_d16QISaDEeysd9mJZcvapQ">
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2wksSaDEeysd9mJZcvapQ" fontName="Ubuntu"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2wksiaDEeysd9mJZcvapQ"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2thYSaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2thYiaDEeysd9mJZcvapQ" x="210" y="250" width="246" height="116"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2uIciaDEeysd9mJZcvapQ" type="2001" element="_d16QIyaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_d2uvgCaDEeysd9mJZcvapQ" type="5002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_d2uvgSaDEeysd9mJZcvapQ" y="5"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2xLwCaDEeysd9mJZcvapQ" type="3016" element="_d163MCaDEeysd9mJZcvapQ">
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2xLwSaDEeysd9mJZcvapQ" fontName="Ubuntu"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2xLwiaDEeysd9mJZcvapQ"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2uIcyaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2uIdCaDEeysd9mJZcvapQ" x="530" y="295" width="191" height="126"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2uvgiaDEeysd9mJZcvapQ" type="2001" element="_d163MiaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_d2vWkCaDEeysd9mJZcvapQ" type="5002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_d2vWkSaDEeysd9mJZcvapQ" y="5"/>
</children>
<children xmi:type="notation:Node" xmi:id="_d2xLwyaDEeysd9mJZcvapQ" type="3016" element="_d163MyaDEeysd9mJZcvapQ">
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2xLxCaDEeysd9mJZcvapQ" fontName="Ubuntu"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2xLxSaDEeysd9mJZcvapQ"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_d2uvgyaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_d2uvhCaDEeysd9mJZcvapQ" x="835" y="280" width="246" height="126"/>
</children>
<children xmi:type="notation:Node" xmi:id="_Ad00cCaGEeycy6Dnvd4IOw" type="2001" element="_AdrDdyaGEeycy6Dnvd4IOw">
<children xmi:type="notation:Node" xmi:id="_Ad4e0CaGEeycy6Dnvd4IOw" type="5002">
<layoutConstraint xmi:type="notation:Location" xmi:id="_Ad4e0SaGEeycy6Dnvd4IOw" y="5"/>
</children>
<children xmi:type="notation:Node" xmi:id="_Ad5F4CaGEeycy6Dnvd4IOw" type="3003" element="_Adut0CaGEeycy6Dnvd4IOw">
<styles xmi:type="notation:ShapeStyle" xmi:id="_Ad5F4SaGEeycy6Dnvd4IOw" fontName="Ubuntu"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ad5F4iaGEeycy6Dnvd4IOw"/>
</children>
<styles xmi:type="notation:ShapeStyle" xmi:id="_Ad00cSaGEeycy6Dnvd4IOw" fontName="Ubuntu" fontHeight="12"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ad00ciaGEeycy6Dnvd4IOw" x="925" y="57" width="135" height="116"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_EnrtIiaDEeysd9mJZcvapQ"/>
<edges xmi:type="notation:Edge" xmi:id="_8XXAQCaDEeysd9mJZcvapQ" type="4001" element="_8XMBICaDEeysd9mJZcvapQ" source="_d2p3ACaDEeysd9mJZcvapQ" target="_d2thYCaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_8XXnUCaDEeysd9mJZcvapQ" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XXnUSaDEeysd9mJZcvapQ" x="-14" y="3"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XYOYCaDEeysd9mJZcvapQ" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XYOYSaDEeysd9mJZcvapQ" x="16" y="1"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XYOYiaDEeysd9mJZcvapQ" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XYOYyaDEeysd9mJZcvapQ" x="15"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_8XXAQSaDEeysd9mJZcvapQ"/>
<styles xmi:type="notation:FontStyle" xmi:id="_8XXAQiaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8XXAQyaDEeysd9mJZcvapQ" points="[-14, 15, 116, -130]$[-81, 90, 49, -55]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XeVACaDEeysd9mJZcvapQ" id="(0.05747126436781609,0.875)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XeVASaDEeysd9mJZcvapQ" id="(0.6504065040650406,0.47413793103448276)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_8XeVAiaDEeysd9mJZcvapQ" type="4001" element="_8XOdYiaDEeysd9mJZcvapQ" source="_d2p3ACaDEeysd9mJZcvapQ" target="_d2thYCaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_8Xe8ECaDEeysd9mJZcvapQ" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8Xe8ESaDEeysd9mJZcvapQ" x="-41" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8Xe8EiaDEeysd9mJZcvapQ" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8Xe8EyaDEeysd9mJZcvapQ" x="4" y="-8"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8Xe8FCaDEeysd9mJZcvapQ" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8Xe8FSaDEeysd9mJZcvapQ" x="9" y="4"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_8XeVAyaDEeysd9mJZcvapQ"/>
<styles xmi:type="notation:FontStyle" xmi:id="_8XeVBCaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8XeVBSaDEeysd9mJZcvapQ" points="[-9, 0, 151, -143]$[-160, 0, 0, -143]$[-160, 139, 0, -4]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XfjICaDEeysd9mJZcvapQ" id="(0.034482758620689655,0.4666666666666667)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XfjISaDEeysd9mJZcvapQ" id="(0.5040650406504065,0.034482758620689655)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_8XfjIiaDEeysd9mJZcvapQ" type="4001" element="_8XPEciaDEeysd9mJZcvapQ" source="_d2p3ACaDEeysd9mJZcvapQ" target="_d2uIciaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_8XfjJiaDEeysd9mJZcvapQ" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XfjJyaDEeysd9mJZcvapQ" x="-31"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XfjKCaDEeysd9mJZcvapQ" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XfjKSaDEeysd9mJZcvapQ" x="21" y="1"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XfjKiaDEeysd9mJZcvapQ" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XfjKyaDEeysd9mJZcvapQ" x="7" y="1"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_8XfjIyaDEeysd9mJZcvapQ"/>
<styles xmi:type="notation:FontStyle" xmi:id="_8XfjJCaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8XfjJSaDEeysd9mJZcvapQ" points="[-4, 24, 0, -124]$[-4, 144, 0, -4]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XgKMCaDEeysd9mJZcvapQ" id="(0.5632183908045977,0.8)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XgKMSaDEeysd9mJZcvapQ" id="(0.5130890052356021,0.031746031746031744)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_8XgKMiaDEeysd9mJZcvapQ" type="4001" element="_8XPrgCaDEeysd9mJZcvapQ" source="_d2p3ACaDEeysd9mJZcvapQ" target="_d2uvgiaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_8XgKNiaDEeysd9mJZcvapQ" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XgKNyaDEeysd9mJZcvapQ" x="12"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XgKOCaDEeysd9mJZcvapQ" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XgKOSaDEeysd9mJZcvapQ" x="-21" y="-1"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XgKOiaDEeysd9mJZcvapQ" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XgKOyaDEeysd9mJZcvapQ" x="-21" y="1"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_8XgKMyaDEeysd9mJZcvapQ"/>
<styles xmi:type="notation:FontStyle" xmi:id="_8XgKNCaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8XgKNSaDEeysd9mJZcvapQ" points="[78, 60, -157, -120]$[220, 168, -15, -12]"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XgxQSaDEeysd9mJZcvapQ" id="(0.06097560975609756,0.11904761904761904)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_8XgxQiaDEeysd9mJZcvapQ" type="4001" element="_8XPrhSaDEeysd9mJZcvapQ" source="_d2uIciaDEeysd9mJZcvapQ" target="_d2uvgiaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_8XhYUCaDEeysd9mJZcvapQ" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XhYUSaDEeysd9mJZcvapQ" x="-1" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XhYUiaDEeysd9mJZcvapQ" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XhYUyaDEeysd9mJZcvapQ" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_8XhYVCaDEeysd9mJZcvapQ" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_8XhYVSaDEeysd9mJZcvapQ" x="-1" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_8XgxQyaDEeysd9mJZcvapQ"/>
<styles xmi:type="notation:FontStyle" xmi:id="_8XgxRCaDEeysd9mJZcvapQ" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8XgxRSaDEeysd9mJZcvapQ" points="[22, -7, -148, 0]$[136, -7, -34, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XhYViaDEeysd9mJZcvapQ" id="(0.8848167539267016,0.49206349206349204)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8XhYVyaDEeysd9mJZcvapQ" id="(0.13821138211382114,0.5555555555555556)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_XGqNECaHEeycy6Dnvd4IOw" type="4001" element="_XF1tsCaHEeycy6Dnvd4IOw" source="_Ad00cCaGEeycy6Dnvd4IOw" target="_d2p3ACaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_XGq0ICaHEeycy6Dnvd4IOw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XGq0ISaHEeycy6Dnvd4IOw" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_XGsCQCaHEeycy6Dnvd4IOw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XGsCQSaHEeycy6Dnvd4IOw" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_XGsCQiaHEeycy6Dnvd4IOw" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XGsCQyaHEeycy6Dnvd4IOw" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_XGqNESaHEeycy6Dnvd4IOw"/>
<styles xmi:type="notation:FontStyle" xmi:id="_XGqNEiaHEeycy6Dnvd4IOw" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XGqNEyaHEeycy6Dnvd4IOw" points="[0, 0, 440, 0]$[-440, 0, 0, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XGvFkCaHEeycy6Dnvd4IOw" id="(0.5,0.5)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XGvFkSaHEeycy6Dnvd4IOw" id="(0.5,0.5)"/>
</edges>
<edges xmi:type="notation:Edge" xmi:id="_XGvFkiaHEeycy6Dnvd4IOw" type="4001" element="_XF2UwiaHEeycy6Dnvd4IOw" source="_Ad00cCaGEeycy6Dnvd4IOw" target="_d2uvgiaDEeysd9mJZcvapQ">
<children xmi:type="notation:Node" xmi:id="_XGvsoCaHEeycy6Dnvd4IOw" type="6001">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XGvsoSaHEeycy6Dnvd4IOw" y="-10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_XGvsoiaHEeycy6Dnvd4IOw" type="6002">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XGvsoyaHEeycy6Dnvd4IOw" y="10"/>
</children>
<children xmi:type="notation:Node" xmi:id="_XGvspCaHEeycy6Dnvd4IOw" type="6003">
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XGvspSaHEeycy6Dnvd4IOw" y="10"/>
</children>
<styles xmi:type="notation:ConnectorStyle" xmi:id="_XGvFkyaHEeycy6Dnvd4IOw"/>
<styles xmi:type="notation:FontStyle" xmi:id="_XGvFlCaHEeycy6Dnvd4IOw" fontName="Ubuntu" fontHeight="12"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XGvFlSaHEeycy6Dnvd4IOw" points="[0, 0, -33, -228]$[23, 165, -10, -63]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XGvspiaHEeycy6Dnvd4IOw" id="(0.5,0.5)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XGvspyaHEeycy6Dnvd4IOw" id="(0.5,0.5)"/>
</edges>
</data>
</ownedAnnotationEntries>
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_EnxMsCaDEeysd9mJZcvapQ" source="DANNOTATION_CUSTOMIZATION_KEY">
<data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_EnxMsSaDEeysd9mJZcvapQ"/>
</ownedAnnotationEntries>
<ownedDiagramElements xmi:type="diagram:DNode" uid="_d1xtQCaDEeysd9mJZcvapQ" name="Conception" outgoingEdges="_8XMBICaDEeysd9mJZcvapQ _8XOdYiaDEeysd9mJZcvapQ _8XPEciaDEeysd9mJZcvapQ _8XPrgCaDEeysd9mJZcvapQ" incomingEdges="_XF1tsCaHEeycy6Dnvd4IOw" width="3" height="3" resizeKind="NSEW">
<target xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.0"/>
<semanticElements xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.0"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:Ellipse" uid="_d11-sCaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" borderSize="3" borderSizeComputationExpression="3" labelPosition="node">
<description xmi:type="style:EllipseNodeDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNode" uid="_d16QICaDEeysd9mJZcvapQ" name="RedactionDoc" incomingEdges="_8XMBICaDEeysd9mJZcvapQ _8XOdYiaDEeysd9mJZcvapQ" width="3" height="3" resizeKind="NSEW">
<target xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.1"/>
<semanticElements xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.1"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:Ellipse" uid="_d16QISaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" borderSize="3" borderSizeComputationExpression="3" labelPosition="node">
<description xmi:type="style:EllipseNodeDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNode" uid="_d16QIyaDEeysd9mJZcvapQ" name="Programmation" outgoingEdges="_8XPrhSaDEeysd9mJZcvapQ" incomingEdges="_8XPEciaDEeysd9mJZcvapQ" width="3" height="3" resizeKind="NSEW">
<target xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.2"/>
<semanticElements xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.2"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:Ellipse" uid="_d163MCaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" borderSize="3" borderSizeComputationExpression="3" labelPosition="node">
<description xmi:type="style:EllipseNodeDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNode" uid="_d163MiaDEeysd9mJZcvapQ" name="RedactionTests" incomingEdges="_8XPrgCaDEeysd9mJZcvapQ _8XPrhSaDEeysd9mJZcvapQ _XF2UwiaHEeycy6Dnvd4IOw" width="3" height="3" resizeKind="NSEW">
<target xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.3"/>
<semanticElements xmi:type="simplepdl:WorkDefinition" href="developpement.simplepdl#//@processElements.3"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:Ellipse" uid="_d163MyaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" borderSize="3" borderSizeComputationExpression="3" labelPosition="node">
<description xmi:type="style:EllipseNodeDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='WDNode']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_8XMBICaDEeysd9mJZcvapQ" name="startToStart" sourceNode="_d1xtQCaDEeysd9mJZcvapQ" targetNode="_d16QICaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.4"/>
<semanticElements xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.4"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_8XN2UCaDEeysd9mJZcvapQ" size="2" strokeColor="214,197,66">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8XN2USaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" labelColor="214,197,66">
<labelFormat>bold</labelFormat>
</centerLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_8XOdYiaDEeysd9mJZcvapQ" name="finishToFinish" sourceNode="_d1xtQCaDEeysd9mJZcvapQ" targetNode="_d16QICaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.5"/>
<semanticElements xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.5"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_8XOdYyaDEeysd9mJZcvapQ" size="2" strokeColor="214,197,66">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8XOdZCaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" labelColor="214,197,66">
<labelFormat>bold</labelFormat>
</centerLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_8XPEciaDEeysd9mJZcvapQ" name="finishToStart" sourceNode="_d1xtQCaDEeysd9mJZcvapQ" targetNode="_d16QIyaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.6"/>
<semanticElements xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.6"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_8XPEcyaDEeysd9mJZcvapQ" size="2" strokeColor="214,197,66">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8XPEdCaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" labelColor="214,197,66">
<labelFormat>bold</labelFormat>
</centerLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_8XPrgCaDEeysd9mJZcvapQ" name="startToStart" sourceNode="_d1xtQCaDEeysd9mJZcvapQ" targetNode="_d163MiaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.7"/>
<semanticElements xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.7"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_8XPrgSaDEeysd9mJZcvapQ" size="2" strokeColor="214,197,66">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8XPrgiaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" labelColor="214,197,66">
<labelFormat>bold</labelFormat>
</centerLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_8XPrhSaDEeysd9mJZcvapQ" name="finishToFinish" sourceNode="_d16QIyaDEeysd9mJZcvapQ" targetNode="_d163MiaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.8"/>
<semanticElements xmi:type="simplepdl:WorkSequence" href="developpement.simplepdl#//@processElements.8"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_8XPrhiaDEeysd9mJZcvapQ" size="2" strokeColor="214,197,66">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_8XPrhyaDEeysd9mJZcvapQ" labelSize="12" showIcon="false" labelColor="214,197,66">
<labelFormat>bold</labelFormat>
</centerLabelStyle>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='WSEdge']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DNode" uid="_AdrDdyaGEeycy6Dnvd4IOw" name="A Guidance" outgoingEdges="_XF1tsCaHEeycy6Dnvd4IOw _XF2UwiaHEeycy6Dnvd4IOw" width="3" height="3" resizeKind="NSEW">
<target xmi:type="simplepdl:Guidance" href="developpement.simplepdl#//@processElements.9"/>
<semanticElements xmi:type="simplepdl:Guidance" href="developpement.simplepdl#//@processElements.9"/>
<arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
<arrangeConstraints>KEEP_SIZE</arrangeConstraints>
<arrangeConstraints>KEEP_RATIO</arrangeConstraints>
<ownedStyle xmi:type="diagram:Square" uid="_Adut0CaGEeycy6Dnvd4IOw" labelSize="12" showIcon="false" borderSize="3" borderSizeComputationExpression="3" labelPosition="node" color="214,197,66">
<description xmi:type="style:SquareDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='GuidanceNode']/@style"/>
</ownedStyle>
<actualMapping xmi:type="description_1:NodeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@nodeMappings[name='GuidanceNode']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_XF1tsCaHEeycy6Dnvd4IOw" sourceNode="_AdrDdyaGEeycy6Dnvd4IOw" targetNode="_d1xtQCaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:Guidance" href="developpement.simplepdl#//@processElements.9"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_XF1tsSaHEeycy6Dnvd4IOw" lineStyle="dash" size="2">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='GEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_XF1tsiaHEeycy6Dnvd4IOw" labelSize="12"/>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='GEdge']"/>
</ownedDiagramElements>
<ownedDiagramElements xmi:type="diagram:DEdge" uid="_XF2UwiaHEeycy6Dnvd4IOw" sourceNode="_AdrDdyaGEeycy6Dnvd4IOw" targetNode="_d163MiaDEeysd9mJZcvapQ">
<target xmi:type="simplepdl:Guidance" href="developpement.simplepdl#//@processElements.9"/>
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_XF2UwyaHEeycy6Dnvd4IOw" lineStyle="dash" size="2">
<description xmi:type="style:EdgeStyleDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='GEdge']/@style"/>
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_XF2UxCaHEeycy6Dnvd4IOw" labelSize="12"/>
</ownedStyle>
<actualMapping xmi:type="description_1:EdgeMapping" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer/@edgeMappings[name='GEdge']"/>
</ownedDiagramElements>
<description xmi:type="description_1:DiagramDescription" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']"/>
<filterVariableHistory xmi:type="diagram:FilterVariableHistory" uid="_EnDbACaDEeysd9mJZcvapQ"/>
<activatedLayers xmi:type="description_1:Layer" href="platform:/resource/fr.n7.simplePDL.design/description/simplePDL.odesign#//@ownedViewpoints[name='simplepdlViewpoint']/@ownedRepresentations[name='ProcessDiagram']/@defaultLayer"/>
<target xmi:type="simplepdl:Process" href="developpement.simplepdl#/"/>
</diagram:DSemanticDiagram>
</xmi:XMI>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 KiB

View file

@ -1,49 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="simplepdl" nsURI="http://simplepdl" nsPrefix="simplepdl">
<eClassifiers xsi:type="ecore:EEnum" name="WorkSequenceType">
<eLiterals name="startToStart"/>
<eLiterals name="finishToStart" value="1"/>
<eLiterals name="startToFinish" value="2"/>
<eLiterals name="finishToFinish" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ProcessElement"/>
<eClassifiers xsi:type="ecore:EClass" name="WorkDefinition" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EReference" name="linksToPredecessors" upperBound="-1"
eType="#//WorkSequence" eOpposite="#//WorkSequence/successor"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="linksToSuccessors" upperBound="-1"
eType="#//WorkSequence" eOpposite="#//WorkSequence/predecessor"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="requests" upperBound="-1"
eType="#//Request"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="WorkSequence" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" lowerBound="1"
eType="#//WorkSequenceType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="predecessor" lowerBound="1"
eType="#//WorkDefinition" eOpposite="#//WorkDefinition/linksToSuccessors"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="successor" lowerBound="1"
eType="#//WorkDefinition" eOpposite="#//WorkDefinition/linksToPredecessors"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Guidance" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="text" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
eType="#//ProcessElement"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Process">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="processElements" upperBound="-1"
eType="#//ProcessElement" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Request">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="quantity" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" lowerBound="1"
eType="#//Resource"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Resource" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="quantity" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>

View file

@ -1,68 +0,0 @@
/**
*/
package simplepdl;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Resource</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.Resource#getQuantity <em>Quantity</em>}</li>
* <li>{@link simplepdl.Resource#getName <em>Name</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getResource()
* @model
* @generated
*/
public interface Resource extends ProcessElement {
/**
* Returns the value of the '<em><b>Quantity</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Quantity</em>' attribute.
* @see #setQuantity(int)
* @see simplepdl.SimplepdlPackage#getResource_Quantity()
* @model required="true"
* @generated
*/
int getQuantity();
/**
* Sets the value of the '{@link simplepdl.Resource#getQuantity <em>Quantity</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Quantity</em>' attribute.
* @see #getQuantity()
* @generated
*/
void setQuantity(int value);
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see simplepdl.SimplepdlPackage#getResource_Name()
* @model required="true"
* @generated
*/
String getName();
/**
* Sets the value of the '{@link simplepdl.Resource#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
} // Resource

View file

@ -1,872 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
/**
* <!-- begin-user-doc -->
* The <b>Package</b> for the model.
* It contains accessors for the meta objects to represent
* <ul>
* <li>each class,</li>
* <li>each feature of each class,</li>
* <li>each operation of each class,</li>
* <li>each enum,</li>
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlFactory
* @model kind="package"
* @generated
*/
public interface SimplepdlPackage extends EPackage {
/**
* The package name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNAME = "simplepdl";
/**
* The package namespace URI.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNS_URI = "http://simplepdl";
/**
* The package namespace name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
String eNS_PREFIX = "simplepdl";
/**
* The singleton instance of the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
SimplepdlPackage eINSTANCE = simplepdl.impl.SimplepdlPackageImpl.init();
/**
* The meta object id for the '{@link simplepdl.impl.ProcessElementImpl <em>Process Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessElementImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcessElement()
* @generated
*/
int PROCESS_ELEMENT = 0;
/**
* The number of structural features of the '<em>Process Element</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_ELEMENT_FEATURE_COUNT = 0;
/**
* The number of operations of the '<em>Process Element</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_ELEMENT_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.WorkDefinitionImpl <em>Work Definition</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkDefinitionImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkDefinition()
* @generated
*/
int WORK_DEFINITION = 1;
/**
* The feature id for the '<em><b>Links To Predecessors</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__LINKS_TO_PREDECESSORS = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Links To Successors</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__LINKS_TO_SUCCESSORS = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__NAME = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The feature id for the '<em><b>Requests</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION__REQUESTS = PROCESS_ELEMENT_FEATURE_COUNT + 3;
/**
* The number of structural features of the '<em>Work Definition</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 4;
/**
* The number of operations of the '<em>Work Definition</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_DEFINITION_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.WorkSequenceImpl <em>Work Sequence</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkSequenceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequence()
* @generated
*/
int WORK_SEQUENCE = 2;
/**
* The feature id for the '<em><b>Link Type</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__LINK_TYPE = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Predecessor</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__PREDECESSOR = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The feature id for the '<em><b>Successor</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE__SUCCESSOR = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of structural features of the '<em>Work Sequence</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 3;
/**
* The number of operations of the '<em>Work Sequence</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WORK_SEQUENCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.GuidanceImpl <em>Guidance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.GuidanceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getGuidance()
* @generated
*/
int GUIDANCE = 3;
/**
* The feature id for the '<em><b>Text</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE__TEXT = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Elements</b></em>' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE__ELEMENTS = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The number of structural features of the '<em>Guidance</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of operations of the '<em>Guidance</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int GUIDANCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.impl.ProcessImpl <em>Process</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcess()
* @generated
*/
int PROCESS = 4;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS__NAME = 0;
/**
* The feature id for the '<em><b>Process Elements</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS__PROCESS_ELEMENTS = 1;
/**
* The number of structural features of the '<em>Process</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_FEATURE_COUNT = 2;
/**
* The number of operations of the '<em>Process</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int PROCESS_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.RequestImpl <em>Request</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.RequestImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getRequest()
* @generated
*/
int REQUEST = 5;
/**
* The feature id for the '<em><b>Quantity</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST__QUANTITY = 0;
/**
* The feature id for the '<em><b>Target</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST__TARGET = 1;
/**
* The number of structural features of the '<em>Request</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST_FEATURE_COUNT = 2;
/**
* The number of operations of the '<em>Request</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int REQUEST_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link simplepdl.impl.ResourceImpl <em>Resource</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ResourceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getResource()
* @generated
*/
int RESOURCE = 6;
/**
* The feature id for the '<em><b>Quantity</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE__QUANTITY = PROCESS_ELEMENT_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE__NAME = PROCESS_ELEMENT_FEATURE_COUNT + 1;
/**
* The number of structural features of the '<em>Resource</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE_FEATURE_COUNT = PROCESS_ELEMENT_FEATURE_COUNT + 2;
/**
* The number of operations of the '<em>Resource</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int RESOURCE_OPERATION_COUNT = PROCESS_ELEMENT_OPERATION_COUNT + 0;
/**
* The meta object id for the '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.WorkSequenceType
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequenceType()
* @generated
*/
int WORK_SEQUENCE_TYPE = 7;
/**
* Returns the meta object for class '{@link simplepdl.ProcessElement <em>Process Element</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Process Element</em>'.
* @see simplepdl.ProcessElement
* @generated
*/
EClass getProcessElement();
/**
* Returns the meta object for class '{@link simplepdl.WorkDefinition <em>Work Definition</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Work Definition</em>'.
* @see simplepdl.WorkDefinition
* @generated
*/
EClass getWorkDefinition();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Links To Predecessors</em>'.
* @see simplepdl.WorkDefinition#getLinksToPredecessors()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_LinksToPredecessors();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Links To Successors</em>'.
* @see simplepdl.WorkDefinition#getLinksToSuccessors()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_LinksToSuccessors();
/**
* Returns the meta object for the attribute '{@link simplepdl.WorkDefinition#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.WorkDefinition#getName()
* @see #getWorkDefinition()
* @generated
*/
EAttribute getWorkDefinition_Name();
/**
* Returns the meta object for the reference list '{@link simplepdl.WorkDefinition#getRequests <em>Requests</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Requests</em>'.
* @see simplepdl.WorkDefinition#getRequests()
* @see #getWorkDefinition()
* @generated
*/
EReference getWorkDefinition_Requests();
/**
* Returns the meta object for class '{@link simplepdl.WorkSequence <em>Work Sequence</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Work Sequence</em>'.
* @see simplepdl.WorkSequence
* @generated
*/
EClass getWorkSequence();
/**
* Returns the meta object for the attribute '{@link simplepdl.WorkSequence#getLinkType <em>Link Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Link Type</em>'.
* @see simplepdl.WorkSequence#getLinkType()
* @see #getWorkSequence()
* @generated
*/
EAttribute getWorkSequence_LinkType();
/**
* Returns the meta object for the reference '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Predecessor</em>'.
* @see simplepdl.WorkSequence#getPredecessor()
* @see #getWorkSequence()
* @generated
*/
EReference getWorkSequence_Predecessor();
/**
* Returns the meta object for the reference '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Successor</em>'.
* @see simplepdl.WorkSequence#getSuccessor()
* @see #getWorkSequence()
* @generated
*/
EReference getWorkSequence_Successor();
/**
* Returns the meta object for class '{@link simplepdl.Guidance <em>Guidance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Guidance</em>'.
* @see simplepdl.Guidance
* @generated
*/
EClass getGuidance();
/**
* Returns the meta object for the attribute '{@link simplepdl.Guidance#getText <em>Text</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Text</em>'.
* @see simplepdl.Guidance#getText()
* @see #getGuidance()
* @generated
*/
EAttribute getGuidance_Text();
/**
* Returns the meta object for the reference list '{@link simplepdl.Guidance#getElements <em>Elements</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference list '<em>Elements</em>'.
* @see simplepdl.Guidance#getElements()
* @see #getGuidance()
* @generated
*/
EReference getGuidance_Elements();
/**
* Returns the meta object for class '{@link simplepdl.Process <em>Process</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Process</em>'.
* @see simplepdl.Process
* @generated
*/
EClass getProcess();
/**
* Returns the meta object for the attribute '{@link simplepdl.Process#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.Process#getName()
* @see #getProcess()
* @generated
*/
EAttribute getProcess_Name();
/**
* Returns the meta object for the containment reference list '{@link simplepdl.Process#getProcessElements <em>Process Elements</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the containment reference list '<em>Process Elements</em>'.
* @see simplepdl.Process#getProcessElements()
* @see #getProcess()
* @generated
*/
EReference getProcess_ProcessElements();
/**
* Returns the meta object for class '{@link simplepdl.Request <em>Request</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Request</em>'.
* @see simplepdl.Request
* @generated
*/
EClass getRequest();
/**
* Returns the meta object for the attribute '{@link simplepdl.Request#getQuantity <em>Quantity</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Quantity</em>'.
* @see simplepdl.Request#getQuantity()
* @see #getRequest()
* @generated
*/
EAttribute getRequest_Quantity();
/**
* Returns the meta object for the reference '{@link simplepdl.Request#getTarget <em>Target</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the reference '<em>Target</em>'.
* @see simplepdl.Request#getTarget()
* @see #getRequest()
* @generated
*/
EReference getRequest_Target();
/**
* Returns the meta object for class '{@link simplepdl.Resource <em>Resource</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for class '<em>Resource</em>'.
* @see simplepdl.Resource
* @generated
*/
EClass getResource();
/**
* Returns the meta object for the attribute '{@link simplepdl.Resource#getQuantity <em>Quantity</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Quantity</em>'.
* @see simplepdl.Resource#getQuantity()
* @see #getResource()
* @generated
*/
EAttribute getResource_Quantity();
/**
* Returns the meta object for the attribute '{@link simplepdl.Resource#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Name</em>'.
* @see simplepdl.Resource#getName()
* @see #getResource()
* @generated
*/
EAttribute getResource_Name();
/**
* Returns the meta object for enum '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for enum '<em>Work Sequence Type</em>'.
* @see simplepdl.WorkSequenceType
* @generated
*/
EEnum getWorkSequenceType();
/**
* Returns the factory that creates the instances of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the factory that creates the instances of the model.
* @generated
*/
SimplepdlFactory getSimplepdlFactory();
/**
* <!-- begin-user-doc -->
* Defines literals for the meta objects that represent
* <ul>
* <li>each class,</li>
* <li>each feature of each class,</li>
* <li>each operation of each class,</li>
* <li>each enum,</li>
* <li>and each data type</li>
* </ul>
* <!-- end-user-doc -->
* @generated
*/
interface Literals {
/**
* The meta object literal for the '{@link simplepdl.impl.ProcessElementImpl <em>Process Element</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessElementImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcessElement()
* @generated
*/
EClass PROCESS_ELEMENT = eINSTANCE.getProcessElement();
/**
* The meta object literal for the '{@link simplepdl.impl.WorkDefinitionImpl <em>Work Definition</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkDefinitionImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkDefinition()
* @generated
*/
EClass WORK_DEFINITION = eINSTANCE.getWorkDefinition();
/**
* The meta object literal for the '<em><b>Links To Predecessors</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__LINKS_TO_PREDECESSORS = eINSTANCE.getWorkDefinition_LinksToPredecessors();
/**
* The meta object literal for the '<em><b>Links To Successors</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__LINKS_TO_SUCCESSORS = eINSTANCE.getWorkDefinition_LinksToSuccessors();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute WORK_DEFINITION__NAME = eINSTANCE.getWorkDefinition_Name();
/**
* The meta object literal for the '<em><b>Requests</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_DEFINITION__REQUESTS = eINSTANCE.getWorkDefinition_Requests();
/**
* The meta object literal for the '{@link simplepdl.impl.WorkSequenceImpl <em>Work Sequence</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.WorkSequenceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequence()
* @generated
*/
EClass WORK_SEQUENCE = eINSTANCE.getWorkSequence();
/**
* The meta object literal for the '<em><b>Link Type</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute WORK_SEQUENCE__LINK_TYPE = eINSTANCE.getWorkSequence_LinkType();
/**
* The meta object literal for the '<em><b>Predecessor</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_SEQUENCE__PREDECESSOR = eINSTANCE.getWorkSequence_Predecessor();
/**
* The meta object literal for the '<em><b>Successor</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference WORK_SEQUENCE__SUCCESSOR = eINSTANCE.getWorkSequence_Successor();
/**
* The meta object literal for the '{@link simplepdl.impl.GuidanceImpl <em>Guidance</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.GuidanceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getGuidance()
* @generated
*/
EClass GUIDANCE = eINSTANCE.getGuidance();
/**
* The meta object literal for the '<em><b>Text</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute GUIDANCE__TEXT = eINSTANCE.getGuidance_Text();
/**
* The meta object literal for the '<em><b>Elements</b></em>' reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference GUIDANCE__ELEMENTS = eINSTANCE.getGuidance_Elements();
/**
* The meta object literal for the '{@link simplepdl.impl.ProcessImpl <em>Process</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ProcessImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getProcess()
* @generated
*/
EClass PROCESS = eINSTANCE.getProcess();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute PROCESS__NAME = eINSTANCE.getProcess_Name();
/**
* The meta object literal for the '<em><b>Process Elements</b></em>' containment reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference PROCESS__PROCESS_ELEMENTS = eINSTANCE.getProcess_ProcessElements();
/**
* The meta object literal for the '{@link simplepdl.impl.RequestImpl <em>Request</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.RequestImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getRequest()
* @generated
*/
EClass REQUEST = eINSTANCE.getRequest();
/**
* The meta object literal for the '<em><b>Quantity</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute REQUEST__QUANTITY = eINSTANCE.getRequest_Quantity();
/**
* The meta object literal for the '<em><b>Target</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EReference REQUEST__TARGET = eINSTANCE.getRequest_Target();
/**
* The meta object literal for the '{@link simplepdl.impl.ResourceImpl <em>Resource</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.impl.ResourceImpl
* @see simplepdl.impl.SimplepdlPackageImpl#getResource()
* @generated
*/
EClass RESOURCE = eINSTANCE.getResource();
/**
* The meta object literal for the '<em><b>Quantity</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute RESOURCE__QUANTITY = eINSTANCE.getResource_Quantity();
/**
* The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
EAttribute RESOURCE__NAME = eINSTANCE.getResource_Name();
/**
* The meta object literal for the '{@link simplepdl.WorkSequenceType <em>Work Sequence Type</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see simplepdl.WorkSequenceType
* @see simplepdl.impl.SimplepdlPackageImpl#getWorkSequenceType()
* @generated
*/
EEnum WORK_SEQUENCE_TYPE = eINSTANCE.getWorkSequenceType();
}
} //SimplepdlPackage

View file

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<petrinet:Reseau xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:petrinet="http://petrinet"/>

View file

@ -1,59 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Guidance</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.Guidance#getText <em>Text</em>}</li>
* <li>{@link simplepdl.Guidance#getElements <em>Elements</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getGuidance()
* @model
* @generated
*/
public interface Guidance extends ProcessElement {
/**
* Returns the value of the '<em><b>Text</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Text</em>' attribute.
* @see #setText(String)
* @see simplepdl.SimplepdlPackage#getGuidance_Text()
* @model required="true"
* @generated
*/
String getText();
/**
* Sets the value of the '{@link simplepdl.Guidance#getText <em>Text</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Text</em>' attribute.
* @see #getText()
* @generated
*/
void setText(String value);
/**
* Returns the value of the '<em><b>Elements</b></em>' reference list.
* The list contents are of type {@link simplepdl.ProcessElement}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Elements</em>' reference list.
* @see simplepdl.SimplepdlPackage#getGuidance_Elements()
* @model
* @generated
*/
EList<ProcessElement> getElements();
} // Guidance

View file

@ -1,6 +1,6 @@
/** /**
*/ */
package simplepdl.provider; package petrinet.provider;
import java.util.Collection; import java.util.Collection;
@ -14,23 +14,23 @@ import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification; import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.Resource; import petrinet.PetrinetPackage;
import simplepdl.SimplepdlPackage; import petrinet.Place;
/** /**
* This is the item provider adapter for a {@link simplepdl.Resource} object. * This is the item provider adapter for a {@link petrinet.Place} object.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public class ResourceItemProvider extends ProcessElementItemProvider { public class PlaceItemProvider extends NoeudItemProvider {
/** /**
* This constructs an instance from a factory and a notifier. * This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public ResourceItemProvider(AdapterFactory adapterFactory) { public PlaceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory); super(adapterFactory);
} }
@ -45,26 +45,25 @@ public class ResourceItemProvider extends ProcessElementItemProvider {
if (itemPropertyDescriptors == null) { if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object); super.getPropertyDescriptors(object);
addQuantityPropertyDescriptor(object); addJetonsPropertyDescriptor(object);
addNamePropertyDescriptor(object);
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
/** /**
* This adds a property descriptor for the Quantity feature. * This adds a property descriptor for the Jetons feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addQuantityPropertyDescriptor(Object object) { protected void addJetonsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Resource_quantity_feature"), getString("_UI_Place_jetons_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Resource_quantity_feature", "_UI_Resource_type"), getString("_UI_PropertyDescriptor_description", "_UI_Place_jetons_feature", "_UI_Place_type"),
SimplepdlPackage.Literals.RESOURCE__QUANTITY, PetrinetPackage.Literals.PLACE__JETONS,
true, true,
false, false,
false, false,
@ -74,36 +73,14 @@ public class ResourceItemProvider extends ProcessElementItemProvider {
} }
/** /**
* This adds a property descriptor for the Name feature. * This returns Place.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addNamePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Resource_name_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Resource_name_feature", "_UI_Resource_type"),
SimplepdlPackage.Literals.RESOURCE__NAME,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This returns Resource.gif.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
@Override @Override
public Object getImage(Object object) { public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/Resource")); return overlayImage(object, getResourceLocator().getImage("full/obj16/Place"));
} }
/** /**
@ -114,10 +91,10 @@ public class ResourceItemProvider extends ProcessElementItemProvider {
*/ */
@Override @Override
public String getText(Object object) { public String getText(Object object) {
String label = ((Resource)object).getName(); String label = ((Place)object).getName();
return label == null || label.length() == 0 ? return label == null || label.length() == 0 ?
getString("_UI_Resource_type") : getString("_UI_Place_type") :
getString("_UI_Resource_type") + " " + label; getString("_UI_Place_type") + " " + label;
} }
@ -132,9 +109,8 @@ public class ResourceItemProvider extends ProcessElementItemProvider {
public void notifyChanged(Notification notification) { public void notifyChanged(Notification notification) {
updateChildren(notification); updateChildren(notification);
switch (notification.getFeatureID(Resource.class)) { switch (notification.getFeatureID(Place.class)) {
case SimplepdlPackage.RESOURCE__QUANTITY: case PetrinetPackage.PLACE__JETONS:
case SimplepdlPackage.RESOURCE__NAME:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return; return;
} }

View file

@ -0,0 +1,28 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
inv errorSeverity: null
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
endpackage

View file

@ -0,0 +1,27 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
inv errorSeverity: null
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
endpackage

View file

@ -1,180 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequenceType labelValue = ((WorkSequence)object).getLinkType();
String label = labelValue == null ? null : labelValue.toString();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + label;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -1,179 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.IItemPropertySource;
import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemProviderAdapter;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.Request;
import simplepdl.SimplepdlPackage;
/**
* This is the item provider adapter for a {@link simplepdl.Request} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class RequestItemProvider
extends ItemProviderAdapter
implements
IEditingDomainItemProvider,
IStructuredItemContentProvider,
ITreeItemContentProvider,
IItemLabelProvider,
IItemPropertySource {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public RequestItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addQuantityPropertyDescriptor(object);
addTargetPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Quantity feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addQuantityPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Request_quantity_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_quantity_feature", "_UI_Request_type"),
SimplepdlPackage.Literals.REQUEST__QUANTITY,
true,
false,
false,
ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Target feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addTargetPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Request_target_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_target_feature", "_UI_Request_type"),
SimplepdlPackage.Literals.REQUEST__TARGET,
true,
false,
true,
null,
null,
null));
}
/**
* This returns Request.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/Request"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
Request request = (Request)object;
return getString("_UI_Request_type") + " " + request.getQuantity() + "-> " + request.getTarget().getName();
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(Request.class)) {
case SimplepdlPackage.REQUEST__QUANTITY:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
/**
* Return the resource locator for this item provider's resources.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public ResourceLocator getResourceLocator() {
return SimplePDLEditPlugin.INSTANCE;
}
}

View file

@ -0,0 +1,49 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
--inv errorSeverity: null
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:simplepdl="http://simplepdl">
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.4" linksToSuccessors="//@processElements.3" name="a1"/>
<processElements xsi:type="simplepdl:Resource" quantity="10" name="Crayons"/>
<processElements xsi:type="simplepdl:WorkDefinition" linksToPredecessors="//@processElements.3" linksToSuccessors="//@processElements.4" name="a2"/>
<processElements xsi:type="simplepdl:WorkSequence" predecessor="//@processElements.0" successor="//@processElements.2"/>
<processElements xsi:type="simplepdl:WorkSequence" linkType="finishToFinish" predecessor="//@processElements.2" successor="//@processElements.0"/>
</simplepdl:Process>

View file

@ -1,18 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Process Element</b></em>'.
* <!-- end-user-doc -->
*
*
* @see simplepdl.SimplepdlPackage#getProcessElement()
* @model abstract="true"
* @generated
*/
public interface ProcessElement extends EObject {
} // ProcessElement

View file

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:simplepdl="http://simplepdl" xsi:schemaLocation="http://simplepdl SimplePDL.ecore"/>

View file

@ -1,44 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/fr.n7.simplePDL/src" modelPluginID="fr.n7.simplePDL"
modelName="SimplePDL" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
operationReflection="true" importOrganizing="true">
<foreignModel>SimplePDL.ecore</foreignModel>
<genPackages prefix="Simplepdl" disposableProviderFactory="true" ecorePackage="SimplePDL.ecore#/">
<genEnums typeSafeEnumCompatible="false" ecoreEnum="SimplePDL.ecore#//WorkSequenceType">
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/startToStart"/>
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/finishToStart"/>
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/startToFinish"/>
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/finishToFinish"/>
</genEnums>
<genClasses image="false" ecoreClass="SimplePDL.ecore#//ProcessElement"/>
<genClasses ecoreClass="SimplePDL.ecore#//WorkDefinition">
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkDefinition/linksToPredecessors"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkDefinition/linksToSuccessors"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//WorkDefinition/name"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkDefinition/requests"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//WorkSequence">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//WorkSequence/linkType"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkSequence/predecessor"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkSequence/successor"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//Guidance">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Guidance/text"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//Guidance/elements"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//Process">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Process/name"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//Process/processElements"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//Request">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Request/quantity"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//Request/target"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//Resource">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Resource/quantity"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Resource/name"/>
</genClasses>
</genPackages>
</genmodel:GenModel>

View file

@ -1,78 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EFactory;
/**
* <!-- begin-user-doc -->
* The <b>Factory</b> for the model.
* It provides a create method for each non-abstract class of the model.
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlPackage
* @generated
*/
public interface SimplepdlFactory extends EFactory {
/**
* The singleton instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
SimplepdlFactory eINSTANCE = simplepdl.impl.SimplepdlFactoryImpl.init();
/**
* Returns a new object of class '<em>Process Element</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Process Element</em>'.
* @generated
*/
ProcessElement createProcessElement();
/**
* Returns a new object of class '<em>Work Definition</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Work Definition</em>'.
* @generated
*/
WorkDefinition createWorkDefinition();
/**
* Returns a new object of class '<em>Work Sequence</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Work Sequence</em>'.
* @generated
*/
WorkSequence createWorkSequence();
/**
* Returns a new object of class '<em>Guidance</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Guidance</em>'.
* @generated
*/
Guidance createGuidance();
/**
* Returns a new object of class '<em>Process</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Process</em>'.
* @generated
*/
Process createProcess();
/**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the package supported by this factory.
* @generated
*/
SimplepdlPackage getSimplepdlPackage();
} //SimplepdlFactory

View file

@ -1,76 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.common.util.EList;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Work Definition</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link simplepdl.WorkDefinition#getLinksToPredecessors <em>Links To Predecessors</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getLinksToSuccessors <em>Links To Successors</em>}</li>
* <li>{@link simplepdl.WorkDefinition#getName <em>Name</em>}</li>
* </ul>
*
* @see simplepdl.SimplepdlPackage#getWorkDefinition()
* @model
* @generated
*/
public interface WorkDefinition extends ProcessElement {
/**
* Returns the value of the '<em><b>Links To Predecessors</b></em>' reference list.
* The list contents are of type {@link simplepdl.WorkSequence}.
* It is bidirectional and its opposite is '{@link simplepdl.WorkSequence#getSuccessor <em>Successor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Links To Predecessors</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_LinksToPredecessors()
* @see simplepdl.WorkSequence#getSuccessor
* @model opposite="successor"
* @generated
*/
EList<WorkSequence> getLinksToPredecessors();
/**
* Returns the value of the '<em><b>Links To Successors</b></em>' reference list.
* The list contents are of type {@link simplepdl.WorkSequence}.
* It is bidirectional and its opposite is '{@link simplepdl.WorkSequence#getPredecessor <em>Predecessor</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Links To Successors</em>' reference list.
* @see simplepdl.SimplepdlPackage#getWorkDefinition_LinksToSuccessors()
* @see simplepdl.WorkSequence#getPredecessor
* @model opposite="predecessor"
* @generated
*/
EList<WorkSequence> getLinksToSuccessors();
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see simplepdl.SimplepdlPackage#getWorkDefinition_Name()
* @model required="true"
* @generated
*/
String getName();
/**
* Sets the value of the '{@link simplepdl.WorkDefinition#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
} // WorkDefinition

View file

@ -1,208 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.impl.EFactoryImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
import simplepdl.Guidance;
import simplepdl.Request;
import simplepdl.Resource;
import simplepdl.SimplepdlFactory;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Factory</b>.
* <!-- end-user-doc -->
* @generated
*/
public class SimplepdlFactoryImpl extends EFactoryImpl implements SimplepdlFactory {
/**
* Creates the default factory implementation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static SimplepdlFactory init() {
try {
SimplepdlFactory theSimplepdlFactory = (SimplepdlFactory)EPackage.Registry.INSTANCE.getEFactory(SimplepdlPackage.eNS_URI);
if (theSimplepdlFactory != null) {
return theSimplepdlFactory;
}
}
catch (Exception exception) {
EcorePlugin.INSTANCE.log(exception);
}
return new SimplepdlFactoryImpl();
}
/**
* Creates an instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlFactoryImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EObject create(EClass eClass) {
switch (eClass.getClassifierID()) {
case SimplepdlPackage.WORK_DEFINITION: return createWorkDefinition();
case SimplepdlPackage.WORK_SEQUENCE: return createWorkSequence();
case SimplepdlPackage.GUIDANCE: return createGuidance();
case SimplepdlPackage.PROCESS: return createProcess();
case SimplepdlPackage.REQUEST: return createRequest();
case SimplepdlPackage.RESOURCE: return createResource();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object createFromString(EDataType eDataType, String initialValue) {
switch (eDataType.getClassifierID()) {
case SimplepdlPackage.WORK_SEQUENCE_TYPE:
return createWorkSequenceTypeFromString(eDataType, initialValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String convertToString(EDataType eDataType, Object instanceValue) {
switch (eDataType.getClassifierID()) {
case SimplepdlPackage.WORK_SEQUENCE_TYPE:
return convertWorkSequenceTypeToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinition createWorkDefinition() {
WorkDefinitionImpl workDefinition = new WorkDefinitionImpl();
return workDefinition;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequence createWorkSequence() {
WorkSequenceImpl workSequence = new WorkSequenceImpl();
return workSequence;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Guidance createGuidance() {
GuidanceImpl guidance = new GuidanceImpl();
return guidance;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public simplepdl.Process createProcess() {
ProcessImpl process = new ProcessImpl();
return process;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Request createRequest() {
RequestImpl request = new RequestImpl();
return request;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Resource createResource() {
ResourceImpl resource = new ResourceImpl();
return resource;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceType createWorkSequenceTypeFromString(EDataType eDataType, String initialValue) {
WorkSequenceType result = WorkSequenceType.get(initialValue);
if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
return result;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertWorkSequenceTypeToString(EDataType eDataType, Object instanceValue) {
return instanceValue == null ? null : instanceValue.toString();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlPackage getSimplepdlPackage() {
return (SimplepdlPackage)getEPackage();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @deprecated
* @generated
*/
@Deprecated
public static SimplepdlPackage getPackage() {
return SimplepdlPackage.eINSTANCE;
}
} //SimplepdlFactoryImpl

View file

@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="petrinet" nsURI="http://petrinet" nsPrefix="petrinet">
<eClassifiers xsi:type="ecore:EClass" name="Place" eSuperTypes="#//Case">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="jetons" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//Case">
<eStructuralFeatures xsi:type="ecore:EReference" name="fleches" upperBound="-1"
eType="#//Flèche"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Flèche">
<eStructuralFeatures xsi:type="ecore:EReference" name="origin" lowerBound="1"
eType="#//Case"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="cible" lowerBound="1" eType="#//Case"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="poids" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Case">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>

View file

@ -0,0 +1,48 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,39 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import simplepdl.ProcessElement;
import simplepdl.SimplepdlPackage;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Process Element</b></em>'.
* <!-- end-user-doc -->
*
* @generated
*/
public abstract class ProcessElementImpl extends MinimalEObjectImpl.Container implements ProcessElement {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected ProcessElementImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.PROCESS_ELEMENT;
}
} //ProcessElementImpl

View file

@ -1,18 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Process Element</b></em>'.
* <!-- end-user-doc -->
*
*
* @see simplepdl.SimplepdlPackage#getProcessElement()
* @model
* @generated
*/
public interface ProcessElement extends EObject {
} // ProcessElement

View file

@ -1,6 +1,6 @@
/** /**
*/ */
package simplepdl.provider; package petrinet.provider;
import java.util.Collection; import java.util.Collection;
@ -22,16 +22,16 @@ import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemProviderAdapter; import org.eclipse.emf.edit.provider.ItemProviderAdapter;
import org.eclipse.emf.edit.provider.ViewerNotification; import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.Request; import petrinet.Arc;
import simplepdl.SimplepdlPackage; import petrinet.PetrinetPackage;
/** /**
* This is the item provider adapter for a {@link simplepdl.Request} object. * This is the item provider adapter for a {@link petrinet.Arc} object.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public class RequestItemProvider public class ArcItemProvider
extends ItemProviderAdapter extends ItemProviderAdapter
implements implements
IEditingDomainItemProvider, IEditingDomainItemProvider,
@ -45,7 +45,7 @@ public class RequestItemProvider
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
public RequestItemProvider(AdapterFactory adapterFactory) { public ArcItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory); super(adapterFactory);
} }
@ -60,26 +60,27 @@ public class RequestItemProvider
if (itemPropertyDescriptors == null) { if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object); super.getPropertyDescriptors(object);
addQuantityPropertyDescriptor(object); addPoidsPropertyDescriptor(object);
addTargetPropertyDescriptor(object); addSortantPropertyDescriptor(object);
addCiblePropertyDescriptor(object);
} }
return itemPropertyDescriptors; return itemPropertyDescriptors;
} }
/** /**
* This adds a property descriptor for the Quantity feature. * This adds a property descriptor for the Poids feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addQuantityPropertyDescriptor(Object object) { protected void addPoidsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Request_quantity_feature"), getString("_UI_Arc_poids_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_quantity_feature", "_UI_Request_type"), getString("_UI_PropertyDescriptor_description", "_UI_Arc_poids_feature", "_UI_Arc_type"),
SimplepdlPackage.Literals.REQUEST__QUANTITY, PetrinetPackage.Literals.ARC__POIDS,
true, true,
false, false,
false, false,
@ -89,19 +90,41 @@ public class RequestItemProvider
} }
/** /**
* This adds a property descriptor for the Target feature. * This adds a property descriptor for the Sortant feature.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
protected void addTargetPropertyDescriptor(Object object) { protected void addSortantPropertyDescriptor(Object object) {
itemPropertyDescriptors.add itemPropertyDescriptors.add
(createItemPropertyDescriptor (createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getResourceLocator(),
getString("_UI_Request_target_feature"), getString("_UI_Arc_sortant_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Request_target_feature", "_UI_Request_type"), getString("_UI_PropertyDescriptor_description", "_UI_Arc_sortant_feature", "_UI_Arc_type"),
SimplepdlPackage.Literals.REQUEST__TARGET, PetrinetPackage.Literals.ARC__SORTANT,
true,
false,
false,
ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Cible feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addCiblePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Arc_cible_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Arc_cible_feature", "_UI_Arc_type"),
PetrinetPackage.Literals.ARC__CIBLE,
true, true,
false, false,
true, true,
@ -111,14 +134,14 @@ public class RequestItemProvider
} }
/** /**
* This returns Request.gif. * This returns Arc.gif.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
* @generated * @generated
*/ */
@Override @Override
public Object getImage(Object object) { public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/Request")); return overlayImage(object, getResourceLocator().getImage("full/obj16/Arc"));
} }
/** /**
@ -129,8 +152,8 @@ public class RequestItemProvider
*/ */
@Override @Override
public String getText(Object object) { public String getText(Object object) {
Request request = (Request)object; Arc arc = (Arc)object;
return getString("_UI_Request_type") + " " + request.getQuantity() + "-> " + request.getTarget(); return getString("_UI_Arc_type") + " " + arc.getPoids();
} }
@ -145,8 +168,9 @@ public class RequestItemProvider
public void notifyChanged(Notification notification) { public void notifyChanged(Notification notification) {
updateChildren(notification); updateChildren(notification);
switch (notification.getFeatureID(Request.class)) { switch (notification.getFeatureID(Arc.class)) {
case SimplepdlPackage.REQUEST__QUANTITY: case PetrinetPackage.ARC__POIDS:
case PetrinetPackage.ARC__SORTANT:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return; return;
} }
@ -173,7 +197,7 @@ public class RequestItemProvider
*/ */
@Override @Override
public ResourceLocator getResourceLocator() { public ResourceLocator getResourceLocator() {
return SimplePDLEditPlugin.INSTANCE; return PetriNetEditPlugin.INSTANCE;
} }
} }

View file

@ -0,0 +1,48 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -1,180 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequenceType labelValue = ((WorkSequence)object).getLinkType();
String label = labelValue == null ? null : labelValue.toString();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + label;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -1,87 +0,0 @@
/**
*/
package simplepdl;
import org.eclipse.emf.ecore.EFactory;
/**
* <!-- begin-user-doc -->
* The <b>Factory</b> for the model.
* It provides a create method for each non-abstract class of the model.
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlPackage
* @generated
*/
public interface SimplepdlFactory extends EFactory {
/**
* The singleton instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
SimplepdlFactory eINSTANCE = simplepdl.impl.SimplepdlFactoryImpl.init();
/**
* Returns a new object of class '<em>Work Definition</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Work Definition</em>'.
* @generated
*/
WorkDefinition createWorkDefinition();
/**
* Returns a new object of class '<em>Work Sequence</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Work Sequence</em>'.
* @generated
*/
WorkSequence createWorkSequence();
/**
* Returns a new object of class '<em>Guidance</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Guidance</em>'.
* @generated
*/
Guidance createGuidance();
/**
* Returns a new object of class '<em>Process</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Process</em>'.
* @generated
*/
Process createProcess();
/**
* Returns a new object of class '<em>Request</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Request</em>'.
* @generated
*/
Request createRequest();
/**
* Returns a new object of class '<em>Resource</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Resource</em>'.
* @generated
*/
Resource createResource();
/**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the package supported by this factory.
* @generated
*/
SimplepdlPackage getSimplepdlPackage();
} //SimplepdlFactory

View file

@ -1,204 +0,0 @@
/**
*/
package simplepdl.impl;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.SimplepdlPackage;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Guidance</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link simplepdl.impl.GuidanceImpl#getText <em>Text</em>}</li>
* <li>{@link simplepdl.impl.GuidanceImpl#getElements <em>Elements</em>}</li>
* </ul>
*
* @generated
*/
public class GuidanceImpl extends ProcessElementImpl implements Guidance {
/**
* The default value of the '{@link #getText() <em>Text</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getText()
* @generated
* @ordered
*/
protected static final String TEXT_EDEFAULT = null;
/**
* The cached value of the '{@link #getText() <em>Text</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getText()
* @generated
* @ordered
*/
protected String text = TEXT_EDEFAULT;
/**
* The cached value of the '{@link #getElements() <em>Elements</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getElements()
* @generated
* @ordered
*/
protected EList<ProcessElement> elements;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected GuidanceImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.GUIDANCE;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getText() {
return text;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setText(String newText) {
String oldText = text;
text = newText;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.GUIDANCE__TEXT, oldText, text));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<ProcessElement> getElements() {
if (elements == null) {
elements = new EObjectResolvingEList<ProcessElement>(ProcessElement.class, this, SimplepdlPackage.GUIDANCE__ELEMENTS);
}
return elements;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SimplepdlPackage.GUIDANCE__TEXT:
return getText();
case SimplepdlPackage.GUIDANCE__ELEMENTS:
return getElements();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case SimplepdlPackage.GUIDANCE__TEXT:
setText((String)newValue);
return;
case SimplepdlPackage.GUIDANCE__ELEMENTS:
getElements().clear();
getElements().addAll((Collection<? extends ProcessElement>)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case SimplepdlPackage.GUIDANCE__TEXT:
setText(TEXT_EDEFAULT);
return;
case SimplepdlPackage.GUIDANCE__ELEMENTS:
getElements().clear();
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case SimplepdlPackage.GUIDANCE__TEXT:
return TEXT_EDEFAULT == null ? text != null : !TEXT_EDEFAULT.equals(text);
case SimplepdlPackage.GUIDANCE__ELEMENTS:
return elements != null && !elements.isEmpty();
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (text: ");
result.append(text);
result.append(')');
return result.toString();
}
} //GuidanceImpl

View file

@ -1,185 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequence ws = (WorkSequence) object;
WorkSequenceType labelValue = ws.getLinkType();
String label = "--" + (labelValue == null ? "?" : labelValue.toString()) + "-->";
String previous = ws.getPredecessor() == null ? "?" : ws.getPredecessor().getName();
String next = ws.getSuccessor() == null ? "?" : ws.getSuccessor().getName();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + previous + " " + label + " " + next;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -1,182 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequenceType labelValue = ((WorkSequence)object).getLinkType();
String label = labelValue == null ? null : labelValue.toString();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + label;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:simplepdl="http://simplepdl"/>

View file

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process
xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:simplepdl="http://simplepdl">
<processElements
xsi:type="simplepdl:WorkDefinition"
linksToSuccessors="//@processElements.4 //@processElements.6 //@processElements.7 //@processElements.8"
name="Conception"/>
<processElements
xsi:type="simplepdl:WorkDefinition"
linksToPredecessors="//@processElements.4"
linksToSuccessors="//@processElements.5"
name="Programmation"/>
<processElements
xsi:type="simplepdl:WorkDefinition"
linksToPredecessors="//@processElements.7 //@processElements.8"
name="RédactionDoc"/>
<processElements
xsi:type="simplepdl:WorkDefinition"
linksToPredecessors="//@processElements.5 //@processElements.6"
name="RédactionTests"/>
<processElements
xsi:type="simplepdl:WorkSequence"
linkType="finishToStart"
predecessor="//@processElements.0"
successor="//@processElements.1"/>
<processElements
xsi:type="simplepdl:WorkSequence"
linkType="finishToFinish"
predecessor="//@processElements.1"
successor="//@processElements.3"/>
<processElements
xsi:type="simplepdl:WorkSequence"
predecessor="//@processElements.0"
successor="//@processElements.3"/>
<processElements
xsi:type="simplepdl:WorkSequence"
predecessor="//@processElements.0"
successor="//@processElements.2"/>
<processElements
xsi:type="simplepdl:WorkSequence"
linkType="finishToFinish"
predecessor="//@processElements.0"
successor="//@processElements.2"/>
</simplepdl:Process>

View file

@ -1,183 +0,0 @@
/**
*/
package simplepdl.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* This is the item provider adapter for a {@link simplepdl.WorkSequence} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class WorkSequenceItemProvider extends ProcessElementItemProvider {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addLinkTypePropertyDescriptor(object);
addPredecessorPropertyDescriptor(object);
addSuccessorPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Link Type feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addLinkTypePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_linkType_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_linkType_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__LINK_TYPE,
true,
false,
false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Predecessor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPredecessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_predecessor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_predecessor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__PREDECESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This adds a property descriptor for the Successor feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSuccessorPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_WorkSequence_successor_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_WorkSequence_successor_feature", "_UI_WorkSequence_type"),
SimplepdlPackage.Literals.WORK_SEQUENCE__SUCCESSOR,
true,
false,
true,
null,
null,
null));
}
/**
* This returns WorkSequence.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/WorkSequence"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
WorkSequence ws = (WorkSequence) object;
WorkSequenceType labelValue = ws.getLinkType();
String label = "--" + (labelValue == null ? "?" : labelValue.toString()) + "-->";
String previous = ws.getPredecessor() == null ? "?" : ws.getPredecessor().getName();
String next = ws.getSuccessor() == null ? "?" : ws.getSuccessor().getName();
return label == null || label.length() == 0 ?
getString("_UI_WorkSequence_type") :
getString("_UI_WorkSequence_type") + " " + previous + " " + label + " " + next;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(WorkSequence.class)) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
}

View file

@ -1,274 +0,0 @@
/**
*/
package simplepdl.impl;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
import org.eclipse.emf.ecore.util.InternalEList;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Work Definition</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getLinksToPredecessors <em>Links To Predecessors</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getLinksToSuccessors <em>Links To Successors</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getName <em>Name</em>}</li>
* </ul>
*
* @generated
*/
public class WorkDefinitionImpl extends ProcessElementImpl implements WorkDefinition {
/**
* The cached value of the '{@link #getLinksToPredecessors() <em>Links To Predecessors</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinksToPredecessors()
* @generated
* @ordered
*/
protected EList<WorkSequence> linksToPredecessors;
/**
* The cached value of the '{@link #getLinksToSuccessors() <em>Links To Successors</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinksToSuccessors()
* @generated
* @ordered
*/
protected EList<WorkSequence> linksToSuccessors;
/**
* The default value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getName()
* @generated
* @ordered
*/
protected static final String NAME_EDEFAULT = null;
/**
* The cached value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getName()
* @generated
* @ordered
*/
protected String name = NAME_EDEFAULT;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected WorkDefinitionImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.WORK_DEFINITION;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<WorkSequence> getLinksToPredecessors() {
if (linksToPredecessors == null) {
linksToPredecessors = new EObjectWithInverseResolvingEList<WorkSequence>(WorkSequence.class, this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS, SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR);
}
return linksToPredecessors;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<WorkSequence> getLinksToSuccessors() {
if (linksToSuccessors == null) {
linksToSuccessors = new EObjectWithInverseResolvingEList<WorkSequence>(WorkSequence.class, this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS, SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR);
}
return linksToSuccessors;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setName(String newName) {
String oldName = name;
name = newName;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_DEFINITION__NAME, oldName, name));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getLinksToPredecessors()).basicAdd(otherEnd, msgs);
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getLinksToSuccessors()).basicAdd(otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return ((InternalEList<?>)getLinksToPredecessors()).basicRemove(otherEnd, msgs);
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return ((InternalEList<?>)getLinksToSuccessors()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return getLinksToPredecessors();
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return getLinksToSuccessors();
case SimplepdlPackage.WORK_DEFINITION__NAME:
return getName();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
getLinksToPredecessors().clear();
getLinksToPredecessors().addAll((Collection<? extends WorkSequence>)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
getLinksToSuccessors().clear();
getLinksToSuccessors().addAll((Collection<? extends WorkSequence>)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__NAME:
setName((String)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
getLinksToPredecessors().clear();
return;
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
getLinksToSuccessors().clear();
return;
case SimplepdlPackage.WORK_DEFINITION__NAME:
setName(NAME_EDEFAULT);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return linksToPredecessors != null && !linksToPredecessors.isEmpty();
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return linksToSuccessors != null && !linksToSuccessors.isEmpty();
case SimplepdlPackage.WORK_DEFINITION__NAME:
return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: ");
result.append(name);
result.append(')');
return result.toString();
}
} //WorkDefinitionImpl

View file

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="petrinet" nsURI="http://petrinet" nsPrefix="petrinet">
<eClassifiers xsi:type="ecore:EClass" name="Place" eSuperTypes="#//Noeud">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="jetons" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//Noeud">
<eStructuralFeatures xsi:type="ecore:EReference" name="fleches" upperBound="-1"
eType="#//Flèche"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Flèche">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="poids" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="sortant" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="cible" lowerBound="1" eType="#//Place"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Noeud" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Reseau">
<eStructuralFeatures xsi:type="ecore:EReference" name="noeuds" upperBound="-1"
eType="#//Noeud" containment="true"/>
</eClassifiers>
</ecore:EPackage>

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:simplepdl="http://simplepdl"/>

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<petrinet:Reseau xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:petrinet="http://petrinet" name="testMDR">
<noeuds xsi:type="petrinet:Place" name="startplace"/>
<noeuds xsi:type="petrinet:Transition" name="starttofinish">
<arcs poids="1" cible="//@noeuds.0"/>
<arcs poids="2" sortant="true" cible="//@noeuds.2"/>
</noeuds>
<noeuds xsi:type="petrinet:Place" name="endplace"/>
</petrinet:Reseau>

View file

@ -0,0 +1,48 @@
import 'SimplePDL.ecore'
package simplepdl
context Process
inv warningSeverity: false
inv withMessage('Explicit message in process ' + self.name + ' (withMessage)'): false
context Process
inv validName('Invalid name: ' + self.name):
self.name.matches('[A-Za-z_][A-Za-z0-9_]*')
context ProcessElement
def: process(): Process =
Process.allInstances()
->select(p | p.processElements->includes(self))
->asSequence()->first()
context WorkSequence
inv successorAndPredecessorInSameProcess('Activities not in the same process : '
+ self.predecessor.name + ' in ' + self.predecessor.process().name+ ' and '
+ self.successor.name + ' in ' + self.successor.process().name
):
self.process() = self.successor.process()
and self.process() = self.predecessor.process()
context Process
inv uniqNames: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w1, w2 | w1 = w2 or w1.name <> w2.name)
context WorkSequence
inv notReflexive: self.predecessor <> self.successor
context Process
inv nameMin2Char: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | w.name.matches('..+'))
context Process
inv weirdName: self.processElements
->select(pe | pe.oclIsKindOf(WorkDefinition))
->collect(pe | pe.oclAsType(WorkDefinition))
->forAll(w | not w.name.matches('([0-9]*|[a-zA-Z]*|_*)'))
endpackage

View file

@ -0,0 +1,209 @@
/**
*/
package petrinet.provider;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.IItemPropertySource;
import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemProviderAdapter;
import org.eclipse.emf.edit.provider.ViewerNotification;
import petrinet.Arc;
import petrinet.PetrinetPackage;
import petrinet.Place;
/**
* This is the item provider adapter for a {@link petrinet.Arc} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class ArcItemProvider
extends ItemProviderAdapter
implements
IEditingDomainItemProvider,
IStructuredItemContentProvider,
ITreeItemContentProvider,
IItemLabelProvider,
IItemPropertySource {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ArcItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addPoidsPropertyDescriptor(object);
addSortantPropertyDescriptor(object);
addCiblePropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Poids feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addPoidsPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Arc_poids_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Arc_poids_feature", "_UI_Arc_type"),
PetrinetPackage.Literals.ARC__POIDS,
true,
false,
false,
ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Sortant feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addSortantPropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Arc_sortant_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Arc_sortant_feature", "_UI_Arc_type"),
PetrinetPackage.Literals.ARC__SORTANT,
true,
false,
false,
ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
null,
null));
}
/**
* This adds a property descriptor for the Cible feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addCiblePropertyDescriptor(Object object) {
itemPropertyDescriptors.add
(createItemPropertyDescriptor
(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
getResourceLocator(),
getString("_UI_Arc_cible_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_Arc_cible_feature", "_UI_Arc_type"),
PetrinetPackage.Literals.ARC__CIBLE,
true,
false,
true,
null,
null,
null));
}
/**
* This returns Arc.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/Arc"));
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
Arc arc = (Arc)object;
boolean sortant = ((Arc)object).isSortant();
int poids = ((Arc)object).getPoids();
String cible = ((Arc)object).getCible().getName();
return sortant ?
"--" + poids + "-->" + cible :
"<--" + poids + "--" + cible;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(Arc.class)) {
case PetrinetPackage.ARC__POIDS:
case PetrinetPackage.ARC__SORTANT:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
/**
* Return the resource locator for this item provider's resources.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public ResourceLocator getResourceLocator() {
return PetriNetEditPlugin.INSTANCE;
}
}

View file

@ -1,49 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="simplepdl" nsURI="http://simplepdl" nsPrefix="simplepdl">
<eClassifiers xsi:type="ecore:EEnum" name="WorkSequenceType">
<eLiterals name="startToStart"/>
<eLiterals name="finishToStart" value="1"/>
<eLiterals name="startToFinish" value="2"/>
<eLiterals name="finishToFinish" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ProcessElement" abstract="true"/>
<eClassifiers xsi:type="ecore:EClass" name="WorkDefinition" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EReference" name="linksToPredecessors" upperBound="-1"
eType="#//WorkSequence" eOpposite="#//WorkSequence/successor"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="linksToSuccessors" upperBound="-1"
eType="#//WorkSequence" eOpposite="#//WorkSequence/predecessor"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="requests" upperBound="-1"
eType="#//Request"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="WorkSequence" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="linkType" lowerBound="1"
eType="#//WorkSequenceType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="predecessor" lowerBound="1"
eType="#//WorkDefinition" eOpposite="#//WorkDefinition/linksToSuccessors"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="successor" lowerBound="1"
eType="#//WorkDefinition" eOpposite="#//WorkDefinition/linksToPredecessors"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Guidance" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="text" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
eType="#//ProcessElement"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Process">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="processElements" upperBound="-1"
eType="#//ProcessElement" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Request">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="quantity" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" lowerBound="1"
eType="#//Resource"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Resource" eSuperTypes="#//ProcessElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="quantity" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>

View file

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/fr.n7.simplePDL/src" modelPluginID="fr.n7.simplePDL"
modelName="SimplePDL" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
operationReflection="true" importOrganizing="true">
<foreignModel>SimplePDL.ecore</foreignModel>
<genPackages prefix="Simplepdl" disposableProviderFactory="true" ecorePackage="SimplePDL.ecore#/">
<genEnums typeSafeEnumCompatible="false" ecoreEnum="SimplePDL.ecore#//WorkSequenceType">
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/startToStart"/>
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/finishToStart"/>
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/startToFinish"/>
<genEnumLiterals ecoreEnumLiteral="SimplePDL.ecore#//WorkSequenceType/finishToFinish"/>
</genEnums>
<genClasses ecoreClass="SimplePDL.ecore#//ProcessElement"/>
<genClasses ecoreClass="SimplePDL.ecore#//WorkDefinition">
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkDefinition/linksToPredecessors"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkDefinition/linksToSuccessors"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//WorkDefinition/name"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//WorkSequence">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//WorkSequence/linkType"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkSequence/predecessor"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//WorkSequence/successor"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//Guidance">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Guidance/text"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//Guidance/elements"/>
</genClasses>
<genClasses ecoreClass="SimplePDL.ecore#//Process">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SimplePDL.ecore#//Process/name"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SimplePDL.ecore#//Process/processElements"/>
</genClasses>
</genPackages>
</genmodel:GenModel>

View file

@ -1,310 +0,0 @@
/**
*/
package simplepdl.impl;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
import org.eclipse.emf.ecore.util.InternalEList;
import simplepdl.Request;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Work Definition</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getLinksToPredecessors <em>Links To Predecessors</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getLinksToSuccessors <em>Links To Successors</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getName <em>Name</em>}</li>
* <li>{@link simplepdl.impl.WorkDefinitionImpl#getRequests <em>Requests</em>}</li>
* </ul>
*
* @generated
*/
public class WorkDefinitionImpl extends ProcessElementImpl implements WorkDefinition {
/**
* The cached value of the '{@link #getLinksToPredecessors() <em>Links To Predecessors</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinksToPredecessors()
* @generated
* @ordered
*/
protected EList<WorkSequence> linksToPredecessors;
/**
* The cached value of the '{@link #getLinksToSuccessors() <em>Links To Successors</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinksToSuccessors()
* @generated
* @ordered
*/
protected EList<WorkSequence> linksToSuccessors;
/**
* The default value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getName()
* @generated
* @ordered
*/
protected static final String NAME_EDEFAULT = null;
/**
* The cached value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getName()
* @generated
* @ordered
*/
protected String name = NAME_EDEFAULT;
/**
* The cached value of the '{@link #getRequests() <em>Requests</em>}' reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getRequests()
* @generated
* @ordered
*/
protected EList<Request> requests;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected WorkDefinitionImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.WORK_DEFINITION;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<WorkSequence> getLinksToPredecessors() {
if (linksToPredecessors == null) {
linksToPredecessors = new EObjectWithInverseResolvingEList<WorkSequence>(WorkSequence.class, this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS, SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR);
}
return linksToPredecessors;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<WorkSequence> getLinksToSuccessors() {
if (linksToSuccessors == null) {
linksToSuccessors = new EObjectWithInverseResolvingEList<WorkSequence>(WorkSequence.class, this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS, SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR);
}
return linksToSuccessors;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String getName() {
return name;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setName(String newName) {
String oldName = name;
name = newName;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_DEFINITION__NAME, oldName, name));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Request> getRequests() {
if (requests == null) {
requests = new EObjectResolvingEList<Request>(Request.class, this, SimplepdlPackage.WORK_DEFINITION__REQUESTS);
}
return requests;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getLinksToPredecessors()).basicAdd(otherEnd, msgs);
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return ((InternalEList<InternalEObject>)(InternalEList<?>)getLinksToSuccessors()).basicAdd(otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return ((InternalEList<?>)getLinksToPredecessors()).basicRemove(otherEnd, msgs);
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return ((InternalEList<?>)getLinksToSuccessors()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return getLinksToPredecessors();
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return getLinksToSuccessors();
case SimplepdlPackage.WORK_DEFINITION__NAME:
return getName();
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
return getRequests();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
getLinksToPredecessors().clear();
getLinksToPredecessors().addAll((Collection<? extends WorkSequence>)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
getLinksToSuccessors().clear();
getLinksToSuccessors().addAll((Collection<? extends WorkSequence>)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__NAME:
setName((String)newValue);
return;
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
getRequests().clear();
getRequests().addAll((Collection<? extends Request>)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
getLinksToPredecessors().clear();
return;
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
getLinksToSuccessors().clear();
return;
case SimplepdlPackage.WORK_DEFINITION__NAME:
setName(NAME_EDEFAULT);
return;
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
getRequests().clear();
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS:
return linksToPredecessors != null && !linksToPredecessors.isEmpty();
case SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS:
return linksToSuccessors != null && !linksToSuccessors.isEmpty();
case SimplepdlPackage.WORK_DEFINITION__NAME:
return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
case SimplepdlPackage.WORK_DEFINITION__REQUESTS:
return requests != null && !requests.isEmpty();
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: ");
result.append(name);
result.append(')');
return result.toString();
}
} //WorkDefinitionImpl

View file

@ -1,2 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<simplepdl:Process xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:simplepdl="http://simplepdl"/>

View file

@ -1,246 +0,0 @@
/**
*/
package simplepdl.util;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.util.Switch;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.Request;
import simplepdl.Resource;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
/**
* <!-- begin-user-doc -->
* The <b>Switch</b> for the model's inheritance hierarchy.
* It supports the call {@link #doSwitch(EObject) doSwitch(object)}
* to invoke the <code>caseXXX</code> method for each class of the model,
* starting with the actual class of the object
* and proceeding up the inheritance hierarchy
* until a non-null result is returned,
* which is the result of the switch.
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlPackage
* @generated
*/
public class SimplepdlSwitch<T> extends Switch<T> {
/**
* The cached model package
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected static SimplepdlPackage modelPackage;
/**
* Creates an instance of the switch.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlSwitch() {
if (modelPackage == null) {
modelPackage = SimplepdlPackage.eINSTANCE;
}
}
/**
* Checks whether this is a switch for the given package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param ePackage the package in question.
* @return whether this is a switch for the given package.
* @generated
*/
@Override
protected boolean isSwitchFor(EPackage ePackage) {
return ePackage == modelPackage;
}
/**
* Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the first non-null result returned by a <code>caseXXX</code> call.
* @generated
*/
@Override
protected T doSwitch(int classifierID, EObject theEObject) {
switch (classifierID) {
case SimplepdlPackage.PROCESS_ELEMENT: {
ProcessElement processElement = (ProcessElement)theEObject;
T result = caseProcessElement(processElement);
if (result == null) result = defaultCase(theEObject);
return result;
}
case SimplepdlPackage.WORK_DEFINITION: {
WorkDefinition workDefinition = (WorkDefinition)theEObject;
T result = caseWorkDefinition(workDefinition);
if (result == null) result = caseProcessElement(workDefinition);
if (result == null) result = defaultCase(theEObject);
return result;
}
case SimplepdlPackage.WORK_SEQUENCE: {
WorkSequence workSequence = (WorkSequence)theEObject;
T result = caseWorkSequence(workSequence);
if (result == null) result = caseProcessElement(workSequence);
if (result == null) result = defaultCase(theEObject);
return result;
}
case SimplepdlPackage.GUIDANCE: {
Guidance guidance = (Guidance)theEObject;
T result = caseGuidance(guidance);
if (result == null) result = caseProcessElement(guidance);
if (result == null) result = defaultCase(theEObject);
return result;
}
case SimplepdlPackage.PROCESS: {
simplepdl.Process process = (simplepdl.Process)theEObject;
T result = caseProcess(process);
if (result == null) result = defaultCase(theEObject);
return result;
}
case SimplepdlPackage.REQUEST: {
Request request = (Request)theEObject;
T result = caseRequest(request);
if (result == null) result = defaultCase(theEObject);
return result;
}
case SimplepdlPackage.RESOURCE: {
Resource resource = (Resource)theEObject;
T result = caseResource(resource);
if (result == null) result = caseProcessElement(resource);
if (result == null) result = defaultCase(theEObject);
return result;
}
default: return defaultCase(theEObject);
}
}
/**
* Returns the result of interpreting the object as an instance of '<em>Process Element</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Process Element</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseProcessElement(ProcessElement object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>Work Definition</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Work Definition</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseWorkDefinition(WorkDefinition object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>Work Sequence</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Work Sequence</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseWorkSequence(WorkSequence object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>Guidance</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Guidance</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseGuidance(Guidance object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>Process</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Process</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseProcess(simplepdl.Process object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>Request</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Request</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseRequest(Request object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>Resource</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>Resource</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public T caseResource(Resource object) {
return null;
}
/**
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch, but this is the last case anyway.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpreting the object as an instance of '<em>EObject</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject)
* @generated
*/
@Override
public T defaultCase(EObject object) {
return null;
}
} //SimplepdlSwitch

View file

@ -1,366 +0,0 @@
/**
*/
package simplepdl.impl;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
import simplepdl.WorkSequenceType;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Work Sequence</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link simplepdl.impl.WorkSequenceImpl#getLinkType <em>Link Type</em>}</li>
* <li>{@link simplepdl.impl.WorkSequenceImpl#getPredecessor <em>Predecessor</em>}</li>
* <li>{@link simplepdl.impl.WorkSequenceImpl#getSuccessor <em>Successor</em>}</li>
* </ul>
*
* @generated
*/
public class WorkSequenceImpl extends ProcessElementImpl implements WorkSequence {
/**
* The default value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinkType()
* @generated
* @ordered
*/
protected static final WorkSequenceType LINK_TYPE_EDEFAULT = WorkSequenceType.START_TO_START;
/**
* The cached value of the '{@link #getLinkType() <em>Link Type</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getLinkType()
* @generated
* @ordered
*/
protected WorkSequenceType linkType = LINK_TYPE_EDEFAULT;
/**
* The cached value of the '{@link #getPredecessor() <em>Predecessor</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getPredecessor()
* @generated
* @ordered
*/
protected WorkDefinition predecessor;
/**
* The cached value of the '{@link #getSuccessor() <em>Successor</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getSuccessor()
* @generated
* @ordered
*/
protected WorkDefinition successor;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected WorkSequenceImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return SimplepdlPackage.Literals.WORK_SEQUENCE;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkSequenceType getLinkType() {
return linkType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setLinkType(WorkSequenceType newLinkType) {
WorkSequenceType oldLinkType = linkType;
linkType = newLinkType == null ? LINK_TYPE_EDEFAULT : newLinkType;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE, oldLinkType, linkType));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinition getPredecessor() {
if (predecessor != null && predecessor.eIsProxy()) {
InternalEObject oldPredecessor = (InternalEObject)predecessor;
predecessor = (WorkDefinition)eResolveProxy(oldPredecessor);
if (predecessor != oldPredecessor) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR, oldPredecessor, predecessor));
}
}
return predecessor;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinition basicGetPredecessor() {
return predecessor;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetPredecessor(WorkDefinition newPredecessor, NotificationChain msgs) {
WorkDefinition oldPredecessor = predecessor;
predecessor = newPredecessor;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR, oldPredecessor, newPredecessor);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setPredecessor(WorkDefinition newPredecessor) {
if (newPredecessor != predecessor) {
NotificationChain msgs = null;
if (predecessor != null)
msgs = ((InternalEObject)predecessor).eInverseRemove(this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS, WorkDefinition.class, msgs);
if (newPredecessor != null)
msgs = ((InternalEObject)newPredecessor).eInverseAdd(this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS, WorkDefinition.class, msgs);
msgs = basicSetPredecessor(newPredecessor, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR, newPredecessor, newPredecessor));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinition getSuccessor() {
if (successor != null && successor.eIsProxy()) {
InternalEObject oldSuccessor = (InternalEObject)successor;
successor = (WorkDefinition)eResolveProxy(oldSuccessor);
if (successor != oldSuccessor) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR, oldSuccessor, successor));
}
}
return successor;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public WorkDefinition basicGetSuccessor() {
return successor;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetSuccessor(WorkDefinition newSuccessor, NotificationChain msgs) {
WorkDefinition oldSuccessor = successor;
successor = newSuccessor;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR, oldSuccessor, newSuccessor);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setSuccessor(WorkDefinition newSuccessor) {
if (newSuccessor != successor) {
NotificationChain msgs = null;
if (successor != null)
msgs = ((InternalEObject)successor).eInverseRemove(this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS, WorkDefinition.class, msgs);
if (newSuccessor != null)
msgs = ((InternalEObject)newSuccessor).eInverseAdd(this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS, WorkDefinition.class, msgs);
msgs = basicSetSuccessor(newSuccessor, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR, newSuccessor, newSuccessor));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
if (predecessor != null)
msgs = ((InternalEObject)predecessor).eInverseRemove(this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_SUCCESSORS, WorkDefinition.class, msgs);
return basicSetPredecessor((WorkDefinition)otherEnd, msgs);
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
if (successor != null)
msgs = ((InternalEObject)successor).eInverseRemove(this, SimplepdlPackage.WORK_DEFINITION__LINKS_TO_PREDECESSORS, WorkDefinition.class, msgs);
return basicSetSuccessor((WorkDefinition)otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
return basicSetPredecessor(null, msgs);
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
return basicSetSuccessor(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
return getLinkType();
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
if (resolve) return getPredecessor();
return basicGetPredecessor();
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
if (resolve) return getSuccessor();
return basicGetSuccessor();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
setLinkType((WorkSequenceType)newValue);
return;
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
setPredecessor((WorkDefinition)newValue);
return;
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
setSuccessor((WorkDefinition)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
setLinkType(LINK_TYPE_EDEFAULT);
return;
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
setPredecessor((WorkDefinition)null);
return;
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
setSuccessor((WorkDefinition)null);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case SimplepdlPackage.WORK_SEQUENCE__LINK_TYPE:
return linkType != LINK_TYPE_EDEFAULT;
case SimplepdlPackage.WORK_SEQUENCE__PREDECESSOR:
return predecessor != null;
case SimplepdlPackage.WORK_SEQUENCE__SUCCESSOR:
return successor != null;
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuilder result = new StringBuilder(super.toString());
result.append(" (linkType: ");
result.append(linkType);
result.append(')');
return result.toString();
}
} //WorkSequenceImpl

View file

@ -1,234 +0,0 @@
/**
*/
package simplepdl.util;
import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
import org.eclipse.emf.ecore.EObject;
import simplepdl.Guidance;
import simplepdl.ProcessElement;
import simplepdl.Request;
import simplepdl.Resource;
import simplepdl.SimplepdlPackage;
import simplepdl.WorkDefinition;
import simplepdl.WorkSequence;
/**
* <!-- begin-user-doc -->
* The <b>Adapter Factory</b> for the model.
* It provides an adapter <code>createXXX</code> method for each class of the model.
* <!-- end-user-doc -->
* @see simplepdl.SimplepdlPackage
* @generated
*/
public class SimplepdlAdapterFactory extends AdapterFactoryImpl {
/**
* The cached model package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected static SimplepdlPackage modelPackage;
/**
* Creates an instance of the adapter factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimplepdlAdapterFactory() {
if (modelPackage == null) {
modelPackage = SimplepdlPackage.eINSTANCE;
}
}
/**
* Returns whether this factory is applicable for the type of the object.
* <!-- begin-user-doc -->
* This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
* <!-- end-user-doc -->
* @return whether this factory is applicable for the type of the object.
* @generated
*/
@Override
public boolean isFactoryForType(Object object) {
if (object == modelPackage) {
return true;
}
if (object instanceof EObject) {
return ((EObject)object).eClass().getEPackage() == modelPackage;
}
return false;
}
/**
* The switch that delegates to the <code>createXXX</code> methods.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected SimplepdlSwitch<Adapter> modelSwitch =
new SimplepdlSwitch<Adapter>() {
@Override
public Adapter caseProcessElement(ProcessElement object) {
return createProcessElementAdapter();
}
@Override
public Adapter caseWorkDefinition(WorkDefinition object) {
return createWorkDefinitionAdapter();
}
@Override
public Adapter caseWorkSequence(WorkSequence object) {
return createWorkSequenceAdapter();
}
@Override
public Adapter caseGuidance(Guidance object) {
return createGuidanceAdapter();
}
@Override
public Adapter caseProcess(simplepdl.Process object) {
return createProcessAdapter();
}
@Override
public Adapter caseRequest(Request object) {
return createRequestAdapter();
}
@Override
public Adapter caseResource(Resource object) {
return createResourceAdapter();
}
@Override
public Adapter defaultCase(EObject object) {
return createEObjectAdapter();
}
};
/**
* Creates an adapter for the <code>target</code>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param target the object to adapt.
* @return the adapter for the <code>target</code>.
* @generated
*/
@Override
public Adapter createAdapter(Notifier target) {
return modelSwitch.doSwitch((EObject)target);
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.ProcessElement <em>Process Element</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.ProcessElement
* @generated
*/
public Adapter createProcessElementAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.WorkDefinition <em>Work Definition</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.WorkDefinition
* @generated
*/
public Adapter createWorkDefinitionAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.WorkSequence <em>Work Sequence</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.WorkSequence
* @generated
*/
public Adapter createWorkSequenceAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.Guidance <em>Guidance</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.Guidance
* @generated
*/
public Adapter createGuidanceAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.Process <em>Process</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.Process
* @generated
*/
public Adapter createProcessAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.Request <em>Request</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.Request
* @generated
*/
public Adapter createRequestAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '{@link simplepdl.Resource <em>Resource</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
* it's useful to ignore a case when inheritance will catch all the cases anyway.
* <!-- end-user-doc -->
* @return the new adapter.
* @see simplepdl.Resource
* @generated
*/
public Adapter createResourceAdapter() {
return null;
}
/**
* Creates a new adapter for the default case.
* <!-- begin-user-doc -->
* This default implementation returns null.
* <!-- end-user-doc -->
* @return the new adapter.
* @generated
*/
public Adapter createEObjectAdapter() {
return null;
}
} //SimplepdlAdapterFactory

Some files were not shown because too many files have changed in this diff Show more