feat: ajout des sources du TP5
This commit is contained in:
parent
60027ab264
commit
a79985efd6
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1,2 +1,2 @@
|
||||||
.metadata
|
.metadata/.plugins/
|
||||||
**/bin/
|
**/bin/
|
||||||
|
|
0
.metadata/.lock
Normal file
0
.metadata/.lock
Normal file
406
.metadata/.log
Normal file
406
.metadata/.log
Normal file
|
@ -0,0 +1,406 @@
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplePDL.toHTML.ui 4 0 2021-10-05 16:30:06.608
|
||||||
|
!MESSAGE '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.IOException: '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:481)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:90)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplePDL.toHTML.ui 4 0 2021-10-05 16:51:13.534
|
||||||
|
!MESSAGE '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.IOException: '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:481)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:90)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-05 16:53:25.649
|
||||||
|
!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-05 16:53:26.906 -----------------------------------------------
|
||||||
|
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/proj_idm/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.ecore 2 0 2021-10-05 16:53:32.004
|
||||||
|
!MESSAGE Both 'fr.n7.idm.simplepdl' and 'fr.n7.simplePDL' register a package for 'http://simplepdl'
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplePDL.toHTML.ui 4 0 2021-10-05 16:53:53.767
|
||||||
|
!MESSAGE '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.IOException: '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:481)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:91)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.ecore 2 0 2021-10-05 16:56:25.148
|
||||||
|
!MESSAGE class simplepdl.impl.SimplepdlFactoryImpl cannot be cast to class simplepdl.SimplepdlFactory (simplepdl.impl.SimplepdlFactoryImpl is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @29ca9b1c; simplepdl.SimplepdlFactory is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @1c6b7c49)
|
||||||
|
!STACK 0
|
||||||
|
java.lang.ClassCastException: class simplepdl.impl.SimplepdlFactoryImpl cannot be cast to class simplepdl.SimplepdlFactory (simplepdl.impl.SimplepdlFactoryImpl is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @29ca9b1c; simplepdl.SimplepdlFactory is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @1c6b7c49)
|
||||||
|
at simplepdl.impl.SimplepdlFactoryImpl.init(SimplepdlFactoryImpl.java:38)
|
||||||
|
at simplepdl.SimplepdlFactory.<clinit>(SimplepdlFactory.java:22)
|
||||||
|
at simplepdl.impl.SimplepdlPackageImpl.<init>(SimplepdlPackageImpl.java:102)
|
||||||
|
at simplepdl.impl.SimplepdlPackageImpl.init(SimplepdlPackageImpl.java:129)
|
||||||
|
at simplepdl.SimplepdlPackage.<clinit>(SimplepdlPackage.java:58)
|
||||||
|
at simplepdl.util.SimplepdlSwitch.<init>(SimplepdlSwitch.java:48)
|
||||||
|
at simplepdl.util.SimplepdlAdapterFactory$1.<init>(SimplepdlAdapterFactory.java:75)
|
||||||
|
at simplepdl.util.SimplepdlAdapterFactory.<init>(SimplepdlAdapterFactory.java:75)
|
||||||
|
at simplepdl.provider.SimplepdlItemProviderAdapterFactory.<init>(SimplepdlItemProviderAdapterFactory.java:66)
|
||||||
|
at simplepdl.presentation.SimplepdlEditor.initializeEditingDomain(SimplepdlEditor.java:703)
|
||||||
|
at simplepdl.presentation.SimplepdlEditor.<init>(SimplepdlEditor.java:688)
|
||||||
|
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
|
||||||
|
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
|
||||||
|
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:204)
|
||||||
|
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:923)
|
||||||
|
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246)
|
||||||
|
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPlugin.lambda$0(WorkbenchPlugin.java:287)
|
||||||
|
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:74)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:285)
|
||||||
|
at org.eclipse.ui.internal.registry.EditorDescriptor.createEditor(EditorDescriptor.java:231)
|
||||||
|
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:321)
|
||||||
|
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPart(CompatibilityPart.java:300)
|
||||||
|
at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPart(CompatibilityEditor.java:61)
|
||||||
|
at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:338)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||||
|
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
|
||||||
|
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:999)
|
||||||
|
at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:964)
|
||||||
|
at org.eclipse.e4.core.internal.di.InjectorImpl.internalInject(InjectorImpl.java:140)
|
||||||
|
at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:405)
|
||||||
|
at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:332)
|
||||||
|
at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:202)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:91)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:60)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:42)
|
||||||
|
at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:132)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:999)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:659)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:765)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:736)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:730)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:714)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.lambda$0(PartServiceImpl.java:104)
|
||||||
|
at org.eclipse.e4.ui.services.internal.events.UIEventHandler.lambda$0(UIEventHandler.java:38)
|
||||||
|
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236)
|
||||||
|
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133)
|
||||||
|
at org.eclipse.swt.widgets.Display.syncExec(Display.java:5855)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:219)
|
||||||
|
at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:38)
|
||||||
|
at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:205)
|
||||||
|
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:203)
|
||||||
|
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
|
||||||
|
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
|
||||||
|
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151)
|
||||||
|
at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:132)
|
||||||
|
at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:75)
|
||||||
|
at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:44)
|
||||||
|
at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:55)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:63)
|
||||||
|
at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424)
|
||||||
|
at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElementGen(ElementContainerImpl.java:170)
|
||||||
|
at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:188)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:659)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:623)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:786)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:400)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1262)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3197)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPage.lambda$9(WorkbenchPage.java:3102)
|
||||||
|
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:74)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3100)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3070)
|
||||||
|
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3061)
|
||||||
|
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:569)
|
||||||
|
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:524)
|
||||||
|
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:363)
|
||||||
|
at org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:170)
|
||||||
|
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:285)
|
||||||
|
at org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:251)
|
||||||
|
at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:274)
|
||||||
|
at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:252)
|
||||||
|
at org.eclipse.jdt.internal.ui.packageview.PackageExplorerActionGroup.handleOpen(PackageExplorerActionGroup.java:366)
|
||||||
|
at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$3.open(PackageExplorerPart.java:546)
|
||||||
|
at org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48)
|
||||||
|
at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:802)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
|
||||||
|
at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:799)
|
||||||
|
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1118)
|
||||||
|
at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:275)
|
||||||
|
at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:270)
|
||||||
|
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:310)
|
||||||
|
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
|
||||||
|
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5745)
|
||||||
|
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1427)
|
||||||
|
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5013)
|
||||||
|
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4507)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1157)
|
||||||
|
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
|
||||||
|
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
|
||||||
|
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
|
||||||
|
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
|
||||||
|
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
|
||||||
|
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:153)
|
||||||
|
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
|
||||||
|
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
|
||||||
|
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
|
||||||
|
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
|
||||||
|
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
|
||||||
|
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||||
|
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
|
||||||
|
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
|
||||||
|
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
|
||||||
|
at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplePDL.toHTML.ui 4 0 2021-10-05 16:56:47.773
|
||||||
|
!MESSAGE '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.IOException: '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:481)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:91)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-05 17:04:41.552
|
||||||
|
!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-05 17:04:42.800 -----------------------------------------------
|
||||||
|
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/proj_idm/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.ecore 2 0 2021-10-05 17:04:47.781
|
||||||
|
!MESSAGE Both 'fr.n7.idm.simplepdl' and 'fr.n7.simplePDL' register a package for 'http://simplepdl'
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-05 17:05:51.304
|
||||||
|
!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-05 17:05:52.174 -----------------------------------------------
|
||||||
|
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/proj_idm/ -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.modeling.product
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplepdl.toHTML 4 0 2021-10-05 17:05:55.280
|
||||||
|
!MESSAGE FrameworkEvent ERROR
|
||||||
|
!STACK 0
|
||||||
|
org.osgi.framework.BundleException: Could not resolve module: fr.n7.simplepdl.toHTML [861]
|
||||||
|
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=14))"
|
||||||
|
|
||||||
|
at org.eclipse.osgi.container.Module.start(Module.java:463)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1845)
|
||||||
|
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1838)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1779)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1743)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1665)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
|
||||||
|
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
|
||||||
|
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplepdl.toHTML.ui 4 0 2021-10-05 17:05:55.283
|
||||||
|
!MESSAGE FrameworkEvent ERROR
|
||||||
|
!STACK 0
|
||||||
|
org.osgi.framework.BundleException: Could not resolve module: fr.n7.simplepdl.toHTML.ui [862]
|
||||||
|
Unresolved requirement: Require-Bundle: fr.n7.simplepdl.toHTML
|
||||||
|
-> Bundle-SymbolicName: fr.n7.simplepdl.toHTML; bundle-version="1.0.0.202110051701"
|
||||||
|
fr.n7.simplepdl.toHTML [861]
|
||||||
|
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=14))"
|
||||||
|
|
||||||
|
at org.eclipse.osgi.container.Module.start(Module.java:463)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1845)
|
||||||
|
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1838)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1779)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1743)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1665)
|
||||||
|
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
|
||||||
|
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
|
||||||
|
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.ecore 2 0 2021-10-05 17:05:57.602
|
||||||
|
!MESSAGE Both 'fr.n7.idm.simplepdl' and 'fr.n7.simplePDL' register a package for 'http://simplepdl'
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.ecore 2 0 2021-10-05 17:06:23.932
|
||||||
|
!MESSAGE class simplepdl.impl.SimplepdlFactoryImpl cannot be cast to class simplepdl.SimplepdlFactory (simplepdl.impl.SimplepdlFactoryImpl is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @49f012bf; simplepdl.SimplepdlFactory is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @24f9b267)
|
||||||
|
!STACK 0
|
||||||
|
java.lang.ClassCastException: class simplepdl.impl.SimplepdlFactoryImpl cannot be cast to class simplepdl.SimplepdlFactory (simplepdl.impl.SimplepdlFactoryImpl is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @49f012bf; simplepdl.SimplepdlFactory is in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @24f9b267)
|
||||||
|
at simplepdl.impl.SimplepdlFactoryImpl.init(SimplepdlFactoryImpl.java:36)
|
||||||
|
at simplepdl.SimplepdlFactory.<clinit>(SimplepdlFactory.java:22)
|
||||||
|
at simplepdl.impl.SimplepdlPackageImpl.<init>(SimplepdlPackageImpl.java:86)
|
||||||
|
at simplepdl.impl.SimplepdlPackageImpl.init(SimplepdlPackageImpl.java:113)
|
||||||
|
at simplepdl.SimplepdlPackage.<clinit>(SimplepdlPackage.java:58)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.registerPackages(ToHTML.java:347)
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:453)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:91)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplePDL.toHTML.ui 4 0 2021-10-05 17:06:23.941
|
||||||
|
!MESSAGE '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.IOException: '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:481)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:91)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY fr.n7.simplePDL.toHTML.ui 4 0 2021-10-05 17:09:56.064
|
||||||
|
!MESSAGE '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.IOException: '/fr/n7/simplePDL/toHTML/main/toHTML.emtl' not found
|
||||||
|
at org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator.initialize(AbstractAcceleoGenerator.java:481)
|
||||||
|
at fr.n7.simplePDL.toHTML.main.ToHTML.<init>(ToHTML.java:91)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.common.GenerateAll.doGenerate(GenerateAll.java:77)
|
||||||
|
at fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction$1.run(AcceleoGenerateToHTMLAction.java:78)
|
||||||
|
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.emf.cdo.explorer 4 0 2021-10-05 18:01:11.006
|
||||||
|
!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)
|
BIN
.metadata/.mylyn/.taskListIndex/segments_1
Normal file
BIN
.metadata/.mylyn/.taskListIndex/segments_1
Normal file
Binary file not shown.
0
.metadata/.mylyn/.taskListIndex/write.lock
Normal file
0
.metadata/.mylyn/.taskListIndex/write.lock
Normal file
BIN
.metadata/.mylyn/.tasks.xml.zip
Normal file
BIN
.metadata/.mylyn/.tasks.xml.zip
Normal file
Binary file not shown.
BIN
.metadata/.mylyn/repositories.xml.zip
Normal file
BIN
.metadata/.mylyn/repositories.xml.zip
Normal file
Binary file not shown.
BIN
.metadata/.mylyn/tasks.xml.zip
Normal file
BIN
.metadata/.mylyn/tasks.xml.zip
Normal file
Binary file not shown.
3
.metadata/version.ini
Normal file
3
.metadata/version.ini
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
#Tue Oct 05 17:05:57 CEST 2021
|
||||||
|
org.eclipse.core.runtime=2
|
||||||
|
org.eclipse.platform=4.17.0.v20200902-1800
|
7
fr.n7.petriNET.toTINA/.classpath
Normal file
7
fr.n7.petriNET.toTINA/.classpath
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||||
|
<classpathentry kind="src" output="bin" path="src"/>
|
||||||
|
<classpathentry kind="output" path="bin"/>
|
||||||
|
</classpath>
|
50
fr.n7.petriNET.toTINA/.project
Normal file
50
fr.n7.petriNET.toTINA/.project
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>fr.n7.petriNET.toTINA</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.acceleo.ide.ui.acceleoBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
<dictionary>
|
||||||
|
<key>compilation.kind</key>
|
||||||
|
<value>compilation.platform.resource</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>compliance</key>
|
||||||
|
<value>pragmatic</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>resource.kind</key>
|
||||||
|
<value>xmi</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>trim-position</key>
|
||||||
|
<value>false</value>
|
||||||
|
</dictionary>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.acceleo.ide.ui.acceleoNature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
<nature>org.eclipse.pde.PluginNature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
23
fr.n7.petriNET.toTINA/META-INF/MANIFEST.MF
Normal file
23
fr.n7.petriNET.toTINA/META-INF/MANIFEST.MF
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Bundle-ManifestVersion: 2
|
||||||
|
Bundle-Name: Acceleo ToTINA Module Runtime Plug-in
|
||||||
|
Bundle-SymbolicName: fr.n7.petriNET.toTINA
|
||||||
|
Bundle-Version: 1.0.0.qualifier
|
||||||
|
Bundle-Activator: fr.n7.petriNET.toTINA.Activator
|
||||||
|
Bundle-Vendor: Eclipse Modeling Project
|
||||||
|
Require-Bundle: org.eclipse.core.runtime,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore.xmi,
|
||||||
|
org.eclipse.ocl,
|
||||||
|
org.eclipse.ocl.ecore,
|
||||||
|
org.eclipse.acceleo.common;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.model;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.profiler;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.engine;bundle-version="3.3.0",
|
||||||
|
com.google.guava
|
||||||
|
Bundle-RequiredExecutionEnvironment: JavaSE-11
|
||||||
|
Bundle-ActivationPolicy: lazy
|
||||||
|
Eclipse-LazyStart: true
|
||||||
|
Export-Package: fr.n7.petriNET.toTINA.main
|
||||||
|
|
5
fr.n7.petriNET.toTINA/build.properties
Normal file
5
fr.n7.petriNET.toTINA/build.properties
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
source.. = src/
|
||||||
|
output.. = bin/
|
||||||
|
bin.includes = META-INF/,\
|
||||||
|
.
|
||||||
|
jre.compilation.profile = JavaSE-11
|
|
@ -0,0 +1,66 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2011 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.petriNET.toTINA;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.Plugin;
|
||||||
|
import org.osgi.framework.BundleContext;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The activator class controls the plug-in life cycle.
|
||||||
|
*/
|
||||||
|
public class Activator extends Plugin {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The plug-in ID.
|
||||||
|
*/
|
||||||
|
public static final String PLUGIN_ID = "fr.n7.petriNET.toTINA";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The shared instance.
|
||||||
|
*/
|
||||||
|
private static Activator plugin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The constructor.
|
||||||
|
*/
|
||||||
|
public Activator() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void start(BundleContext context) throws Exception {
|
||||||
|
super.start(context);
|
||||||
|
plugin = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void stop(BundleContext context) throws Exception {
|
||||||
|
plugin = null;
|
||||||
|
super.stop(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the shared instance.
|
||||||
|
*
|
||||||
|
* @return the shared instance
|
||||||
|
*/
|
||||||
|
public static Activator getDefault() {
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
421
fr.n7.petriNET.toTINA/src/fr/n7/petriNET/toTINA/main/ToTINA.java
Normal file
421
fr.n7.petriNET.toTINA/src/fr/n7/petriNET/toTINA/main/ToTINA.java
Normal file
|
@ -0,0 +1,421 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2012 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.petriNET.toTINA.main;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.acceleo.engine.event.IAcceleoTextGenerationListener;
|
||||||
|
import org.eclipse.acceleo.engine.generation.strategy.IAcceleoGenerationStrategy;
|
||||||
|
import org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator;
|
||||||
|
import org.eclipse.emf.common.util.BasicMonitor;
|
||||||
|
import org.eclipse.emf.common.util.Monitor;
|
||||||
|
import org.eclipse.emf.common.util.URI;
|
||||||
|
import org.eclipse.emf.ecore.EObject;
|
||||||
|
import org.eclipse.emf.ecore.resource.ResourceSet;
|
||||||
|
|
||||||
|
import simplepdl.SimplepdlPackage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Entry point of the 'ToTINA' generation module.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public class ToTINA extends AbstractAcceleoGenerator {
|
||||||
|
/**
|
||||||
|
* The name of the module.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static final String MODULE_FILE_NAME = "/fr/n7/petriNET/toTINA/main/toTINA";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The name of the templates that are to be generated.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static final String[] TEMPLATE_NAMES = { "networkToTINA" };
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of properties files from the launch parameters (Launch configuration).
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
private List<String> propertiesFiles = new ArrayList<String>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allows the public constructor to be used. Note that a generator created
|
||||||
|
* this way cannot be used to launch generations before one of
|
||||||
|
* {@link #initialize(EObject, File, List)} or
|
||||||
|
* {@link #initialize(URI, File, List)} is called.
|
||||||
|
* <p>
|
||||||
|
* The main reason for this constructor is to allow clients of this
|
||||||
|
* generation to call it from another Java file, as it allows for the
|
||||||
|
* retrieval of {@link #getProperties()} and
|
||||||
|
* {@link #getGenerationListeners()}.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public ToTINA() {
|
||||||
|
// Empty implementation
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This allows clients to instantiates a generator with all required information.
|
||||||
|
*
|
||||||
|
* @param modelURI
|
||||||
|
* URI where the model on which this generator will be used is located.
|
||||||
|
* @param targetFolder
|
||||||
|
* This will be used as the output folder for this generation : it will be the base path
|
||||||
|
* against which all file block URLs will be resolved.
|
||||||
|
* @param arguments
|
||||||
|
* If the template which will be called requires more than one argument taken from the model,
|
||||||
|
* pass them here.
|
||||||
|
* @throws IOException
|
||||||
|
* This can be thrown in three scenarios : the module cannot be found, it cannot be loaded, or
|
||||||
|
* the model cannot be loaded.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public ToTINA(URI modelURI, File targetFolder,
|
||||||
|
List<? extends Object> arguments) throws IOException {
|
||||||
|
initialize(modelURI, targetFolder, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This allows clients to instantiates a generator with all required information.
|
||||||
|
*
|
||||||
|
* @param model
|
||||||
|
* We'll iterate over the content of this element to find Objects matching the first parameter
|
||||||
|
* of the template we need to call.
|
||||||
|
* @param targetFolder
|
||||||
|
* This will be used as the output folder for this generation : it will be the base path
|
||||||
|
* against which all file block URLs will be resolved.
|
||||||
|
* @param arguments
|
||||||
|
* If the template which will be called requires more than one argument taken from the model,
|
||||||
|
* pass them here.
|
||||||
|
* @throws IOException
|
||||||
|
* This can be thrown in two scenarios : the module cannot be found, or it cannot be loaded.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public ToTINA(EObject model, File targetFolder,
|
||||||
|
List<? extends Object> arguments) throws IOException {
|
||||||
|
initialize(model, targetFolder, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to launch the generation from a standalone application.
|
||||||
|
*
|
||||||
|
* @param args
|
||||||
|
* Arguments of the generation.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try {
|
||||||
|
if (args.length < 2) {
|
||||||
|
System.out.println("Arguments not valid : {model, folder}.");
|
||||||
|
} else {
|
||||||
|
URI modelURI = URI.createFileURI(args[0]);
|
||||||
|
File folder = new File(args[1]);
|
||||||
|
|
||||||
|
List<String> arguments = new ArrayList<String>();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add in this list all the arguments used by the starting point of the generation
|
||||||
|
* If your main template is called on an element of your model and a String, you can
|
||||||
|
* add in "arguments" this "String" attribute.
|
||||||
|
*/
|
||||||
|
|
||||||
|
ToTINA generator = new ToTINA(modelURI, folder, arguments);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add the properties from the launch arguments.
|
||||||
|
* If you want to programmatically add new properties, add them in "propertiesFiles"
|
||||||
|
* You can add the absolute path of a properties files, or even a project relative path.
|
||||||
|
* If you want to add another "protocol" for your properties files, please override
|
||||||
|
* "getPropertiesLoaderService(AcceleoService)" in order to return a new property loader.
|
||||||
|
* The behavior of the properties loader service is explained in the Acceleo documentation
|
||||||
|
* (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
|
||||||
|
for (int i = 2; i < args.length; i++) {
|
||||||
|
generator.addPropertiesFile(args[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
generator.doGenerate(new BasicMonitor());
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Launches the generation described by this instance.
|
||||||
|
*
|
||||||
|
* @param monitor
|
||||||
|
* This will be used to display progress information to the user.
|
||||||
|
* @throws IOException
|
||||||
|
* This will be thrown if any of the output files cannot be saved to disk.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void doGenerate(Monitor monitor) throws IOException {
|
||||||
|
/*
|
||||||
|
* TODO if you wish to change the generation as a whole, override this. The default behavior should
|
||||||
|
* be sufficient in most cases. If you want to change the content of this method, do NOT forget to
|
||||||
|
* change the "@generated" tag in the Javadoc of this method to "@generated NOT". Without this new tag,
|
||||||
|
* any compilation of the Acceleo module with the main template that has caused the creation of this
|
||||||
|
* class will revert your modifications. If you encounter a problem with an unresolved proxy during the
|
||||||
|
* generation, you can remove the comments in the following instructions to check for problems. Please
|
||||||
|
* note that those instructions may have a significant impact on the performances.
|
||||||
|
*/
|
||||||
|
|
||||||
|
//org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(model);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to check for potential errors in your models before the launch of the generation, you
|
||||||
|
* use the code below.
|
||||||
|
*/
|
||||||
|
|
||||||
|
//if (model != null && model.eResource() != null) {
|
||||||
|
// List<org.eclipse.emf.ecore.resource.Resource.Diagnostic> errors = model.eResource().getErrors();
|
||||||
|
// for (org.eclipse.emf.ecore.resource.Resource.Diagnostic diagnostic : errors) {
|
||||||
|
// System.err.println(diagnostic.toString());
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
super.doGenerate(monitor);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If this generator needs to listen to text generation events, listeners can be returned from here.
|
||||||
|
*
|
||||||
|
* @return List of listeners that are to be notified when text is generated through this launch.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<IAcceleoTextGenerationListener> getGenerationListeners() {
|
||||||
|
List<IAcceleoTextGenerationListener> listeners = super.getGenerationListeners();
|
||||||
|
/*
|
||||||
|
* TODO if you need to listen to generation event, add listeners to the list here. If you want to change
|
||||||
|
* the content of this method, do NOT forget to change the "@generated" tag in the Javadoc of this method
|
||||||
|
* to "@generated NOT". Without this new tag, any compilation of the Acceleo module with the main template
|
||||||
|
* that has caused the creation of this class will revert your modifications.
|
||||||
|
*/
|
||||||
|
return listeners;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If you need to change the way files are generated, this is your entry point.
|
||||||
|
* <p>
|
||||||
|
* The default is {@link org.eclipse.acceleo.engine.generation.strategy.DefaultStrategy}; it generates
|
||||||
|
* files on the fly. If you only need to preview the results, return a new
|
||||||
|
* {@link org.eclipse.acceleo.engine.generation.strategy.PreviewStrategy}. Both of these aren't aware of
|
||||||
|
* the running Eclipse and can be used standalone.
|
||||||
|
* </p>
|
||||||
|
* <p>
|
||||||
|
* If you need the file generation to be aware of the workspace (A typical example is when you wanna
|
||||||
|
* override files that are under clear case or any other VCS that could forbid the overriding), then
|
||||||
|
* return a new {@link org.eclipse.acceleo.engine.generation.strategy.WorkspaceAwareStrategy}.
|
||||||
|
* <b>Note</b>, however, that this <b>cannot</b> be used standalone.
|
||||||
|
* </p>
|
||||||
|
* <p>
|
||||||
|
* All three of these default strategies support merging through JMerge.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @return The generation strategy that is to be used for generations launched through this launcher.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public IAcceleoGenerationStrategy getGenerationStrategy() {
|
||||||
|
return super.getGenerationStrategy();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will be called in order to find and load the module that will be launched through this launcher.
|
||||||
|
* We expect this name not to contain file extension, and the module to be located beside the launcher.
|
||||||
|
*
|
||||||
|
* @return The name of the module that is to be launched.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String getModuleName() {
|
||||||
|
return MODULE_FILE_NAME;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If the module(s) called by this launcher require properties files, return their qualified path from
|
||||||
|
* here.Take note that the first added properties files will take precedence over subsequent ones if they
|
||||||
|
* contain conflicting keys.
|
||||||
|
*
|
||||||
|
* @return The list of properties file we need to add to the generation context.
|
||||||
|
* @see java.util.ResourceBundle#getBundle(String)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<String> getProperties() {
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO if your generation module requires access to properties files, add their qualified path to the list here.
|
||||||
|
*
|
||||||
|
* Properties files can be located in an Eclipse plug-in or in the file system (all Acceleo projects are Eclipse
|
||||||
|
* plug-in). In order to use properties files located in an Eclipse plugin, you need to add the path of the properties
|
||||||
|
* files to the "propertiesFiles" list:
|
||||||
|
*
|
||||||
|
* final String prefix = "platform:/plugin/";
|
||||||
|
* final String pluginName = "org.eclipse.acceleo.module.sample";
|
||||||
|
* final String packagePath = "/org/eclipse/acceleo/module/sample/properties/";
|
||||||
|
* final String fileName = "default.properties";
|
||||||
|
* propertiesFiles.add(prefix + pluginName + packagePath + fileName);
|
||||||
|
*
|
||||||
|
* With this mechanism, you can load properties files from your plugin or from another plugin.
|
||||||
|
*
|
||||||
|
* You may want to load properties files from the file system, for that you need to add the absolute path of the file:
|
||||||
|
*
|
||||||
|
* propertiesFiles.add("C:\Users\MyName\MyFile.properties");
|
||||||
|
*
|
||||||
|
* If you want to let your users add properties files located in the same folder as the model:
|
||||||
|
*
|
||||||
|
* if (EMFPlugin.IS_ECLIPSE_RUNNING && model != null && model.eResource() != null) {
|
||||||
|
* propertiesFiles.addAll(AcceleoEngineUtils.getPropertiesFilesNearModel(model.eResource()));
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
* To learn more about Properties Files, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
return propertiesFiles;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a properties file in the list of properties files.
|
||||||
|
*
|
||||||
|
* @param propertiesFile
|
||||||
|
* The properties file to add.
|
||||||
|
* @generated
|
||||||
|
* @since 3.1
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void addPropertiesFile(String propertiesFile) {
|
||||||
|
this.propertiesFiles.add(propertiesFile);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will be used to get the list of templates that are to be launched by this launcher.
|
||||||
|
*
|
||||||
|
* @return The list of templates to call on the module {@link #getModuleName()}.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String[] getTemplateNames() {
|
||||||
|
return TEMPLATE_NAMES;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to update the resource set's package registry with all needed EPackages.
|
||||||
|
*
|
||||||
|
* @param resourceSet
|
||||||
|
* The resource set which registry has to be updated.
|
||||||
|
* @generated NOT
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void registerPackages(ResourceSet resourceSet) {
|
||||||
|
super.registerPackages(resourceSet);
|
||||||
|
|
||||||
|
|
||||||
|
if (!isInWorkspace(PetrinetPackage.class))
|
||||||
|
resourceSet.getPackageRegistry().put(
|
||||||
|
PetrinetPackage.eNS_URI, PetrinetPackage.eINSTANCE);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you need additional package registrations, you can register them here. The following line
|
||||||
|
* (in comment) is an example of the package registration for UML.
|
||||||
|
*
|
||||||
|
* You can use the method "isInWorkspace(Class c)" to check if the package that you are about to
|
||||||
|
* register is in the workspace.
|
||||||
|
*
|
||||||
|
* To register a package properly, please follow the following conventions:
|
||||||
|
*
|
||||||
|
* If the package is located in another plug-in, already installed in Eclipse. The following content should
|
||||||
|
* have been generated at the beginning of this method. Do not register the package using this mechanism if
|
||||||
|
* the metamodel is located in the workspace.
|
||||||
|
*
|
||||||
|
* if (!isInWorkspace(UMLPackage.class)) {
|
||||||
|
* // The normal package registration if your metamodel is in a plugin.
|
||||||
|
* resourceSet.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
* If the package is located in another project in your workspace, the plugin containing the package has not
|
||||||
|
* been register by EMF and Acceleo should register it automatically. If you want to use the generator in
|
||||||
|
* stand alone, the regular registration (seen a couple lines before) is needed.
|
||||||
|
*
|
||||||
|
* To learn more about Package Registration, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to update the resource set's resource factory registry with all needed factories.
|
||||||
|
*
|
||||||
|
* @param resourceSet
|
||||||
|
* The resource set which registry has to be updated.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void registerResourceFactories(ResourceSet resourceSet) {
|
||||||
|
super.registerResourceFactories(resourceSet);
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO If you need additional resource factories registrations, you can register them here. the following line
|
||||||
|
* (in comment) is an example of the resource factory registration.
|
||||||
|
*
|
||||||
|
* If you want to use the generator in stand alone, the resource factory registration will be required.
|
||||||
|
*
|
||||||
|
* To learn more about the registration of Resource Factories, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
|
||||||
|
// resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put(XyzResource.FILE_EXTENSION, XyzResource.Factory.INSTANCE);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Some metamodels require a very complex setup for standalone usage. For example, if you want to use a generator
|
||||||
|
* targetting UML models in standalone, you NEED to use the following:
|
||||||
|
*/
|
||||||
|
// UMLResourcesUtil.init(resourceSet)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
[comment encoding = UTF-8 /]
|
||||||
|
[module toTINA('http://petrinet')]
|
||||||
|
|
||||||
|
|
||||||
|
[template public networkToTINA(aReseau : Reseau)]
|
||||||
|
[comment @main/]
|
||||||
|
[file (aReseau.name, false, 'UTF-8')]
|
||||||
|
|
||||||
|
[/file]
|
||||||
|
[/template]
|
66
fr.n7.petriNET.toTINA/tasks/toTINA.xml
Normal file
66
fr.n7.petriNET.toTINA/tasks/toTINA.xml
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project default="toTINA" name="fr.n7.petriNET.toTINA">
|
||||||
|
<property name="ECLIPSE_HOME" value="../../../../../mnt/n7fs/ens/tp_cregut/eclipse-gls-2020-09"/>
|
||||||
|
<property name="ECLIPSE_WORKSPACE" value="../.."/>
|
||||||
|
|
||||||
|
<!-- The classpath with only the dependencies used by the project -->
|
||||||
|
<path id="fr.n7.petriNET.toTINA.libraryclasspath">
|
||||||
|
<pathelement location="${ECLIPSE_WORKSPACE}/fr.n7.petriNET.toTINA/bin"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.runtime_3.19.0.v20200724-1004.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi_3.16.0.v20200828-0759.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi.compatibility.state_1.2.100.v20200811-1344.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.common_3.13.0.v20200828-1034.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.jobs_3.10.800.v20200421-0950.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.registry_3.9.0.v20200625-1425.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.preferences_3.8.0.v20200422-1833.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.contenttype_3.7.800.v20200724-0804.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.app_1.5.0.v20200717-0620.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.ecore_2.23.0.v20200630-0516.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.common_2.20.0.v20200822-0801.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.ecore.xmi_2.16.0.v20190528-0725.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl_3.15.100.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/lpg.runtime.java_2.0.17.v201004271640.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl.common_1.8.500.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl.ecore_3.15.100.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.common_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.model_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.profiler_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.engine_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.codegen.ecore_2.23.0.v20200701-0840.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.codegen_2.21.0.v20200708-0547.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/com.google.guava_27.1.0.v20190517-1946.jar"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<path id="fr.n7.petriNET.toTINA.classpath">
|
||||||
|
<path refid="fr.n7.petriNET.toTINA.libraryclasspath"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- The classpath with only the jars available in the plugin folder of Eclipse -->
|
||||||
|
<path id="fr.n7.petriNET.toTINA.libraryclasspath.alljars">
|
||||||
|
<pathelement location="../fr.n7.petriNET.toTINA/bin"/>
|
||||||
|
<fileset dir="${ECLIPSE_HOME}/plugins/" includes="*.jar"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<path id="fr.n7.petriNET.toTINA.classpath.alljars">
|
||||||
|
<path refid="fr.n7.petriNET.toTINA.libraryclasspath.alljars"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- The default task with the jars used by this project -->
|
||||||
|
<target name="toTINA">
|
||||||
|
<java classname="fr.n7.petriNET.toTINA.main.ToTINA" classpathref="fr.n7.petriNET.toTINA.classpath">
|
||||||
|
<arg value="${model}"/>
|
||||||
|
<arg value="${target}"/>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
In case of problem you can also try with all the jar available in your Eclipse
|
||||||
|
Keep in mind that having two versions of the same jar can create problems
|
||||||
|
-->
|
||||||
|
<target name="toTINA.alljars">
|
||||||
|
<java classname="fr.n7.petriNET.toTINA.main.ToTINA" classpathref="fr.n7.petriNET.toTINA.classpath">
|
||||||
|
<arg value="${model}"/>
|
||||||
|
<arg value="${target}"/>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
</project>
|
19
fr.n7.petriNET.toTINA/tasks/toTINATarget.xml
Normal file
19
fr.n7.petriNET.toTINA/tasks/toTINATarget.xml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!-- Place this file in the target project and call it with "External Tools > Run As > Ant Build" -->
|
||||||
|
<!-- You have to change the MODEL and the TARGET values -->
|
||||||
|
|
||||||
|
<project basedir="." default="toTINASample" name="fr.n7.petriNET.toTINASample">
|
||||||
|
<import file="../../fr.n7.petriNET.toTINA/tasks/toTINA.xml"/>
|
||||||
|
|
||||||
|
<!-- Change the values of MODEL and TARGET to point to your model and output folder -->
|
||||||
|
<property name="MODEL" value="${basedir}/model/file.xmi"/>
|
||||||
|
<property name="TARGET" value="${basedir}/src-gen"/>
|
||||||
|
|
||||||
|
<target name="toTINASample" description="Generate files in 'TARGET'">
|
||||||
|
<antcall target="toTINA" >
|
||||||
|
<param name="model" value="${MODEL}"/>
|
||||||
|
<param name="target" value="${TARGET}"/>
|
||||||
|
</antcall>
|
||||||
|
</target>
|
||||||
|
</project>
|
|
@ -12,6 +12,10 @@
|
||||||
<description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
|
<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#/"/>
|
<target xmi:type="ecore:EPackage" href="petriNet.ecore#/"/>
|
||||||
</ownedRepresentationDescriptors>
|
</ownedRepresentationDescriptors>
|
||||||
|
<ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" uid="_nT-TACX0EeyV9fQppiJGXQ" name="petrinet class diagram" repPath="#_nTkqYCX0EeyV9fQppiJGXQ" changeId="a83ccfba-9055-426a-aefe-10737e329fd8">
|
||||||
|
<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>
|
||||||
<ownedViews xmi:type="viewpoint:DView" uid="_oSeucBuHEeynApCp8QEOUg">
|
<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']"/>
|
<viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Review']"/>
|
||||||
|
@ -665,4 +669,348 @@
|
||||||
<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']"/>
|
<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#/"/>
|
<target xmi:type="ecore:EPackage" href="petriNet.ecore#/"/>
|
||||||
</diagram:DSemanticDiagram>
|
</diagram:DSemanticDiagram>
|
||||||
|
<diagram:DSemanticDiagram uid="_nTkqYCX0EeyV9fQppiJGXQ">
|
||||||
|
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_nUQm4CX0EeyV9fQppiJGXQ" source="GMF_DIAGRAMS">
|
||||||
|
<data xmi:type="notation:Diagram" xmi:id="_nUQm4SX0EeyV9fQppiJGXQ" type="Sirius" element="_nTkqYCX0EeyV9fQppiJGXQ" measurementUnit="Pixel">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n49PYCX0EeyV9fQppiJGXQ" type="2003" element="_n4c5ECX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n492cCX0EeyV9fQppiJGXQ" type="5007"/>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n492cSX0EeyV9fQppiJGXQ" type="7004">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5ASsyX0EeyV9fQppiJGXQ" type="3010" element="_n4ul5CX0EeyV9fQppiJGXQ">
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5AStCX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8" bold="true"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Location" xmi:id="_n5AStSX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:SortingStyle" xmi:id="_n492ciX0EeyV9fQppiJGXQ"/>
|
||||||
|
<styles xmi:type="notation:FilteringStyle" xmi:id="_n492cyX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ShapeStyle" xmi:id="_n49PYSX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n49PYiX0EeyV9fQppiJGXQ" x="172" y="316"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4-dgCX0EeyV9fQppiJGXQ" type="2003" element="_n4gjcCX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4-dgyX0EeyV9fQppiJGXQ" type="5007"/>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4-dhCX0EeyV9fQppiJGXQ" type="7004">
|
||||||
|
<styles xmi:type="notation:SortingStyle" xmi:id="_n4-dhSX0EeyV9fQppiJGXQ"/>
|
||||||
|
<styles xmi:type="notation:FilteringStyle" xmi:id="_n4-dhiX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ShapeStyle" xmi:id="_n4-dgSX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n4-dgiX0EeyV9fQppiJGXQ" x="648" y="316"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_EkCX0EeyV9fQppiJGXQ" type="2003" element="_n4hxkCX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_EkyX0EeyV9fQppiJGXQ" type="5007"/>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_ElCX0EeyV9fQppiJGXQ" type="7004">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5A5wCX0EeyV9fQppiJGXQ" type="3010" element="_n4xCICX0EeyV9fQppiJGXQ">
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5A5wSX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8" bold="true"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Location" xmi:id="_n5A5wiX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5A5wyX0EeyV9fQppiJGXQ" type="3010" element="_n4xpMSX0EeyV9fQppiJGXQ">
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5A5xCX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8" bold="true"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Location" xmi:id="_n5A5xSX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:SortingStyle" xmi:id="_n4_ElSX0EeyV9fQppiJGXQ"/>
|
||||||
|
<styles xmi:type="notation:FilteringStyle" xmi:id="_n4_EliX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ShapeStyle" xmi:id="_n4_EkSX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n4_EkiX0EeyV9fQppiJGXQ" x="399" y="316"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_ElyX0EeyV9fQppiJGXQ" type="2003" element="_n4iYoSX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_roCX0EeyV9fQppiJGXQ" type="5007"/>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_roSX0EeyV9fQppiJGXQ" type="7004">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5Bg0CX0EeyV9fQppiJGXQ" type="3010" element="_n4y3UCX0EeyV9fQppiJGXQ">
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5Bg0SX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8" bold="true"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Location" xmi:id="_n5Bg0iX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:SortingStyle" xmi:id="_n4_roiX0EeyV9fQppiJGXQ"/>
|
||||||
|
<styles xmi:type="notation:FilteringStyle" xmi:id="_n4_royX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ShapeStyle" xmi:id="_n4_EmCX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8" italic="true"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n4_EmSX0EeyV9fQppiJGXQ" x="416" y="160"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_rpCX0EeyV9fQppiJGXQ" type="2003" element="_n4kN0CX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n4_rpyX0EeyV9fQppiJGXQ" type="5007"/>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5ASsCX0EeyV9fQppiJGXQ" type="7004">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5CH4CX0EeyV9fQppiJGXQ" type="3010" element="_n4zeYCX0EeyV9fQppiJGXQ">
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5CH4SX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8" bold="true"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Location" xmi:id="_n5CH4iX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:SortingStyle" xmi:id="_n5ASsSX0EeyV9fQppiJGXQ"/>
|
||||||
|
<styles xmi:type="notation:FilteringStyle" xmi:id="_n5ASsiX0EeyV9fQppiJGXQ"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ShapeStyle" xmi:id="_n4_rpSX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n4_rpiX0EeyV9fQppiJGXQ" x="180" y="160"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:DiagramStyle" xmi:id="_nUQm4iX0EeyV9fQppiJGXQ"/>
|
||||||
|
<edges xmi:type="notation:Edge" xmi:id="_n5DWACX0EeyV9fQppiJGXQ" type="4001" element="_n41TkCX0EeyV9fQppiJGXQ" source="_n4-dgCX0EeyV9fQppiJGXQ" target="_n4_EkCX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5D9ECX0EeyV9fQppiJGXQ" type="6001">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5D9ESX0EeyV9fQppiJGXQ" x="7" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5EkICX0EeyV9fQppiJGXQ" type="6002">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5EkISX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5EkIiX0EeyV9fQppiJGXQ" type="6003">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5EkIyX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ConnectorStyle" xmi:id="_n5DWASX0EeyV9fQppiJGXQ" routing="Rectilinear"/>
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5DWAiX0EeyV9fQppiJGXQ" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n5DWAyX0EeyV9fQppiJGXQ" points="[-59, 7, 173, 7]$[-156, 7, 76, 7]"/>
|
||||||
|
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5JcoCX0EeyV9fQppiJGXQ" id="(0.5,0.5)"/>
|
||||||
|
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5JcoSX0EeyV9fQppiJGXQ" id="(0.5,0.5)"/>
|
||||||
|
</edges>
|
||||||
|
<edges xmi:type="notation:Edge" xmi:id="_n5JcoiX0EeyV9fQppiJGXQ" type="4001" element="_n43IwCX0EeyV9fQppiJGXQ" source="_n4_EkCX0EeyV9fQppiJGXQ" target="_n49PYCX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5KDsCX0EeyV9fQppiJGXQ" type="6001">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5KDsSX0EeyV9fQppiJGXQ" y="10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5KDsiX0EeyV9fQppiJGXQ" type="6002">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5KDsyX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5KDtCX0EeyV9fQppiJGXQ" type="6003">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5KDtSX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ConnectorStyle" xmi:id="_n5JcoyX0EeyV9fQppiJGXQ" routing="Rectilinear"/>
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5JcpCX0EeyV9fQppiJGXQ" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n5JcpSX0EeyV9fQppiJGXQ" points="[-76, -25, 168, -25]$[-185, -25, 59, -25]"/>
|
||||||
|
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5KDtiX0EeyV9fQppiJGXQ" id="(0.5,0.5)"/>
|
||||||
|
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5KDtyX0EeyV9fQppiJGXQ" id="(0.5,0.5)"/>
|
||||||
|
</edges>
|
||||||
|
<edges xmi:type="notation:Edge" xmi:id="_n5KqwCX0EeyV9fQppiJGXQ" type="4001" element="_n43v2SX0EeyV9fQppiJGXQ" source="_n4_rpCX0EeyV9fQppiJGXQ" target="_n4_ElyX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5KqxCX0EeyV9fQppiJGXQ" type="6001">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5KqxSX0EeyV9fQppiJGXQ" y="10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5KqxiX0EeyV9fQppiJGXQ" type="6002">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5KqxyX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5KqyCX0EeyV9fQppiJGXQ" type="6003">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5KqySX0EeyV9fQppiJGXQ" x="-1" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ConnectorStyle" xmi:id="_n5KqwSX0EeyV9fQppiJGXQ" routing="Rectilinear"/>
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5KqwiX0EeyV9fQppiJGXQ" fontColor="7490599" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n5KqwyX0EeyV9fQppiJGXQ" points="[236, 0, 0, -98]$[236, 98, 0, 0]"/>
|
||||||
|
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5KqyiX0EeyV9fQppiJGXQ" id="(0.5084745762711864,0.0)"/>
|
||||||
|
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5KqyyX0EeyV9fQppiJGXQ" id="(0.5084745762711864,1.0)"/>
|
||||||
|
</edges>
|
||||||
|
<edges xmi:type="notation:Edge" xmi:id="_n5KqzCX0EeyV9fQppiJGXQ" type="4001" element="_n4498CX0EeyV9fQppiJGXQ" source="_n49PYCX0EeyV9fQppiJGXQ" target="_n4_ElyX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5LR0CX0EeyV9fQppiJGXQ" type="6001">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5LR0SX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5LR0iX0EeyV9fQppiJGXQ" type="6002">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5LR0yX0EeyV9fQppiJGXQ" y="10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5LR1CX0EeyV9fQppiJGXQ" type="6003">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5LR1SX0EeyV9fQppiJGXQ" y="10"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ConnectorStyle" xmi:id="_n5KqzSX0EeyV9fQppiJGXQ" routing="Tree"/>
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5KqziX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n5KqzyX0EeyV9fQppiJGXQ" points="[-1, 0, -189, 60]$[187, -60, -1, 0]"/>
|
||||||
|
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5LR1iX0EeyV9fQppiJGXQ" id="(0.5084745762711864,0.0)"/>
|
||||||
|
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5LR1yX0EeyV9fQppiJGXQ" id="(0.5084745762711864,1.0)"/>
|
||||||
|
</edges>
|
||||||
|
<edges xmi:type="notation:Edge" xmi:id="_n5LR2CX0EeyV9fQppiJGXQ" type="4001" element="_n46MECX0EeyV9fQppiJGXQ" source="_n4-dgCX0EeyV9fQppiJGXQ" target="_n4_ElyX0EeyV9fQppiJGXQ">
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5L44CX0EeyV9fQppiJGXQ" type="6001">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5L44SX0EeyV9fQppiJGXQ" y="-10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5L44iX0EeyV9fQppiJGXQ" type="6002">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5L44yX0EeyV9fQppiJGXQ" y="10"/>
|
||||||
|
</children>
|
||||||
|
<children xmi:type="notation:Node" xmi:id="_n5L45CX0EeyV9fQppiJGXQ" type="6003">
|
||||||
|
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_n5L45SX0EeyV9fQppiJGXQ" y="10"/>
|
||||||
|
</children>
|
||||||
|
<styles xmi:type="notation:ConnectorStyle" xmi:id="_n5LR2SX0EeyV9fQppiJGXQ" routing="Tree"/>
|
||||||
|
<styles xmi:type="notation:FontStyle" xmi:id="_n5LR2iX0EeyV9fQppiJGXQ" fontName="Ubuntu" fontHeight="8"/>
|
||||||
|
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n5LR2yX0EeyV9fQppiJGXQ" points="[-1, 0, 96, 380]$[-2, -320, 95, 60]$[-98, -380, -1, 0]"/>
|
||||||
|
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5L45iX0EeyV9fQppiJGXQ" id="(0.5084745762711864,0.0)"/>
|
||||||
|
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n5L45yX0EeyV9fQppiJGXQ" id="(0.5084745762711864,1.0)"/>
|
||||||
|
</edges>
|
||||||
|
</data>
|
||||||
|
</ownedAnnotationEntries>
|
||||||
|
<ownedAnnotationEntries xmi:type="description:AnnotationEntry" uid="_nUnzQCX0EeyV9fQppiJGXQ" source="DANNOTATION_CUSTOMIZATION_KEY">
|
||||||
|
<data xmi:type="diagram:ComputedStyleDescriptionRegistry" uid="_nUnzQSX0EeyV9fQppiJGXQ">
|
||||||
|
<computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_n4v0ACX0EeyV9fQppiJGXQ" 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="_n42hsCX0EeyV9fQppiJGXQ" sourceArrow="FillDiamond" routingStyle="manhattan">
|
||||||
|
<strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
|
||||||
|
<centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_n42hsSX0EeyV9fQppiJGXQ" 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="_n42hsiX0EeyV9fQppiJGXQ" 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="_n43v0CX0EeyV9fQppiJGXQ" routingStyle="manhattan">
|
||||||
|
<strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
|
||||||
|
<centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_n43v0SX0EeyV9fQppiJGXQ" 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="_n43v0iX0EeyV9fQppiJGXQ" 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="_n4c5ECX0EeyV9fQppiJGXQ" name="Place" tooltipText="" outgoingEdges="_n4498CX0EeyV9fQppiJGXQ" incomingEdges="_n43IwCX0EeyV9fQppiJGXQ" 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="_n4euQCX0EeyV9fQppiJGXQ" 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="_n4ul5CX0EeyV9fQppiJGXQ" 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="_n4wbECX0EeyV9fQppiJGXQ" labelAlignment="LEFT" description="_n4v0ACX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n4gjcCX0EeyV9fQppiJGXQ" name="Transition" tooltipText="" outgoingEdges="_n41TkCX0EeyV9fQppiJGXQ _n46MECX0EeyV9fQppiJGXQ" 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="_n4gjcSX0EeyV9fQppiJGXQ" 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="_n4hxkCX0EeyV9fQppiJGXQ" name="Flèche" tooltipText="" outgoingEdges="_n43IwCX0EeyV9fQppiJGXQ" incomingEdges="_n41TkCX0EeyV9fQppiJGXQ" 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="_n4hxkSX0EeyV9fQppiJGXQ" 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="_n4xCICX0EeyV9fQppiJGXQ" 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="_n4xpMCX0EeyV9fQppiJGXQ" labelAlignment="LEFT" description="_n4v0ACX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n4xpMSX0EeyV9fQppiJGXQ" 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="_n4yQQCX0EeyV9fQppiJGXQ" labelAlignment="LEFT" description="_n4v0ACX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n4iYoSX0EeyV9fQppiJGXQ" name="Noeud" tooltipText="" incomingEdges="_n43v2SX0EeyV9fQppiJGXQ _n4498CX0EeyV9fQppiJGXQ _n46MECX0EeyV9fQppiJGXQ" 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="_n4i_sCX0EeyV9fQppiJGXQ" 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="_n4y3UCX0EeyV9fQppiJGXQ" 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="_n4y3USX0EeyV9fQppiJGXQ" labelAlignment="LEFT" description="_n4v0ACX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n4kN0CX0EeyV9fQppiJGXQ" name="Reseau" tooltipText="" outgoingEdges="_n43v2SX0EeyV9fQppiJGXQ" width="12" height="10">
|
||||||
|
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Reseau"/>
|
||||||
|
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Reseau"/>
|
||||||
|
<ownedStyle xmi:type="diagram:FlatContainerStyle" uid="_n4k04CX0EeyV9fQppiJGXQ" 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="_n4zeYCX0EeyV9fQppiJGXQ" 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="_n40FcCX0EeyV9fQppiJGXQ" labelAlignment="LEFT" description="_n4v0ACX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n41TkCX0EeyV9fQppiJGXQ" name="[0..*] fleches" sourceNode="_n4gjcCX0EeyV9fQppiJGXQ" targetNode="_n4hxkCX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n42hsyX0EeyV9fQppiJGXQ" description="_n42hsCX0EeyV9fQppiJGXQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
|
||||||
|
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_n42htSX0EeyV9fQppiJGXQ" showIcon="false">
|
||||||
|
<customFeatures>labelSize</customFeatures>
|
||||||
|
</centerLabelStyle>
|
||||||
|
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_n42htCX0EeyV9fQppiJGXQ" 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="_n43IwCX0EeyV9fQppiJGXQ" name="[1..1] cible" sourceNode="_n4hxkCX0EeyV9fQppiJGXQ" targetNode="_n4c5ECX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n43v0yX0EeyV9fQppiJGXQ" description="_n43v0CX0EeyV9fQppiJGXQ" routingStyle="manhattan" strokeColor="0,0,0">
|
||||||
|
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_n43v1SX0EeyV9fQppiJGXQ" showIcon="false">
|
||||||
|
<customFeatures>labelSize</customFeatures>
|
||||||
|
</centerLabelStyle>
|
||||||
|
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_n43v1CX0EeyV9fQppiJGXQ" 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="_n43v2SX0EeyV9fQppiJGXQ" name="[0..*] noeuds" sourceNode="_n4kN0CX0EeyV9fQppiJGXQ" targetNode="_n4iYoSX0EeyV9fQppiJGXQ">
|
||||||
|
<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="_n44W4CX0EeyV9fQppiJGXQ" description="_n42hsCX0EeyV9fQppiJGXQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
|
||||||
|
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_n44W4iX0EeyV9fQppiJGXQ" showIcon="false">
|
||||||
|
<customFeatures>labelSize</customFeatures>
|
||||||
|
</centerLabelStyle>
|
||||||
|
<endLabelStyle xmi:type="diagram:EndLabelStyle" uid="_n44W4SX0EeyV9fQppiJGXQ" 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="_n4498CX0EeyV9fQppiJGXQ" sourceNode="_n4c5ECX0EeyV9fQppiJGXQ" targetNode="_n4iYoSX0EeyV9fQppiJGXQ">
|
||||||
|
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
|
||||||
|
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Place"/>
|
||||||
|
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_n45lACX0EeyV9fQppiJGXQ" 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="_n45lASX0EeyV9fQppiJGXQ" showIcon="false">
|
||||||
|
<labelFormat>italic</labelFormat>
|
||||||
|
</beginLabelStyle>
|
||||||
|
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_n45lAiX0EeyV9fQppiJGXQ" 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="_n46MECX0EeyV9fQppiJGXQ" sourceNode="_n4gjcCX0EeyV9fQppiJGXQ" targetNode="_n4iYoSX0EeyV9fQppiJGXQ">
|
||||||
|
<target xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
|
||||||
|
<semanticElements xmi:type="ecore:EClass" href="petriNet.ecore#//Transition"/>
|
||||||
|
<ownedStyle xmi:type="diagram:EdgeStyle" uid="_n46zICX0EeyV9fQppiJGXQ" 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="_n46zISX0EeyV9fQppiJGXQ" showIcon="false">
|
||||||
|
<labelFormat>italic</labelFormat>
|
||||||
|
</beginLabelStyle>
|
||||||
|
<centerLabelStyle xmi:type="diagram:CenterLabelStyle" uid="_n46zIiX0EeyV9fQppiJGXQ" 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="_nTzT4CX0EeyV9fQppiJGXQ"/>
|
||||||
|
<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>
|
</xmi:XMI>
|
||||||
|
|
|
@ -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"/>
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 252 KiB After Width: | Height: | Size: 269 KiB |
7
fr.n7.simplePDF.todot/.classpath
Normal file
7
fr.n7.simplePDF.todot/.classpath
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||||
|
<classpathentry kind="src" output="bin" path="src"/>
|
||||||
|
<classpathentry kind="output" path="bin"/>
|
||||||
|
</classpath>
|
50
fr.n7.simplePDF.todot/.project
Normal file
50
fr.n7.simplePDF.todot/.project
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>fr.n7.simplePDF.todot</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.acceleo.ide.ui.acceleoBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
<dictionary>
|
||||||
|
<key>compilation.kind</key>
|
||||||
|
<value>compilation.platform.resource</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>compliance</key>
|
||||||
|
<value>pragmatic</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>resource.kind</key>
|
||||||
|
<value>xmi</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>trim-position</key>
|
||||||
|
<value>false</value>
|
||||||
|
</dictionary>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.acceleo.ide.ui.acceleoNature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
<nature>org.eclipse.pde.PluginNature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
24
fr.n7.simplePDF.todot/META-INF/MANIFEST.MF
Normal file
24
fr.n7.simplePDF.todot/META-INF/MANIFEST.MF
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Bundle-ManifestVersion: 2
|
||||||
|
Bundle-Name: Acceleo Todot Module Runtime Plug-in
|
||||||
|
Bundle-SymbolicName: fr.n7.simplePDF.todot
|
||||||
|
Bundle-Version: 1.0.0.qualifier
|
||||||
|
Bundle-Activator: fr.n7.simplePDF.todot.Activator
|
||||||
|
Bundle-Vendor: Eclipse Modeling Project
|
||||||
|
Require-Bundle: org.eclipse.core.runtime,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore.xmi,
|
||||||
|
org.eclipse.ocl,
|
||||||
|
org.eclipse.ocl.ecore,
|
||||||
|
org.eclipse.acceleo.common;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.model;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.profiler;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.engine;bundle-version="3.3.0",
|
||||||
|
com.google.guava
|
||||||
|
Bundle-RequiredExecutionEnvironment: JavaSE-11
|
||||||
|
Bundle-ActivationPolicy: lazy
|
||||||
|
Eclipse-LazyStart: true
|
||||||
|
Export-Package: fr.n7.simplePDF.todot.main
|
||||||
|
Import-Package: simplepdl
|
||||||
|
|
5
fr.n7.simplePDF.todot/build.properties
Normal file
5
fr.n7.simplePDF.todot/build.properties
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
source.. = src/
|
||||||
|
output.. = bin/
|
||||||
|
bin.includes = META-INF/,\
|
||||||
|
.
|
||||||
|
jre.compilation.profile = JavaSE-11
|
4
fr.n7.simplePDF.todot/gen_test/Mon premier processus.dot
Normal file
4
fr.n7.simplePDF.todot/gen_test/Mon premier processus.dot
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
digraph "Mon premier processus" {
|
||||||
|
"Ma première WorkDefinition, quelle émotion" -> "Ma deuxième WorkDefinition, toujours autant d'émotion" [arrowhead=vee label=finishToFinish]
|
||||||
|
"Ma première WorkDefinition, quelle émotion" -> "Ma deuxième WorkDefinition, toujours autant d'émotion" [arrowhead=vee label=startToStart]
|
||||||
|
}
|
BIN
fr.n7.simplePDF.todot/gen_test/Mon premier processus.pdf
Normal file
BIN
fr.n7.simplePDF.todot/gen_test/Mon premier processus.pdf
Normal file
Binary file not shown.
|
@ -0,0 +1,66 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2011 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDF.todot;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.Plugin;
|
||||||
|
import org.osgi.framework.BundleContext;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The activator class controls the plug-in life cycle.
|
||||||
|
*/
|
||||||
|
public class Activator extends Plugin {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The plug-in ID.
|
||||||
|
*/
|
||||||
|
public static final String PLUGIN_ID = "fr.n7.simplePDF.todot";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The shared instance.
|
||||||
|
*/
|
||||||
|
private static Activator plugin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The constructor.
|
||||||
|
*/
|
||||||
|
public Activator() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void start(BundleContext context) throws Exception {
|
||||||
|
super.start(context);
|
||||||
|
plugin = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void stop(BundleContext context) throws Exception {
|
||||||
|
plugin = null;
|
||||||
|
super.stop(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the shared instance.
|
||||||
|
*
|
||||||
|
* @return the shared instance
|
||||||
|
*/
|
||||||
|
public static Activator getDefault() {
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
419
fr.n7.simplePDF.todot/src/fr/n7/simplePDF/todot/main/Todot.java
Normal file
419
fr.n7.simplePDF.todot/src/fr/n7/simplePDF/todot/main/Todot.java
Normal file
|
@ -0,0 +1,419 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2012 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDF.todot.main;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.acceleo.engine.event.IAcceleoTextGenerationListener;
|
||||||
|
import org.eclipse.acceleo.engine.generation.strategy.IAcceleoGenerationStrategy;
|
||||||
|
import org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator;
|
||||||
|
import org.eclipse.emf.common.util.BasicMonitor;
|
||||||
|
import org.eclipse.emf.common.util.Monitor;
|
||||||
|
import org.eclipse.emf.common.util.URI;
|
||||||
|
import org.eclipse.emf.ecore.EObject;
|
||||||
|
import org.eclipse.emf.ecore.resource.ResourceSet;
|
||||||
|
|
||||||
|
import simplepdl.SimplepdlPackage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Entry point of the 'Todot' generation module.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public class Todot extends AbstractAcceleoGenerator {
|
||||||
|
/**
|
||||||
|
* The name of the module.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static final String MODULE_FILE_NAME = "/fr/n7/simplePDF/todot/main/todot";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The name of the templates that are to be generated.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static final String[] TEMPLATE_NAMES = { "processToDot" };
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of properties files from the launch parameters (Launch configuration).
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
private List<String> propertiesFiles = new ArrayList<String>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allows the public constructor to be used. Note that a generator created
|
||||||
|
* this way cannot be used to launch generations before one of
|
||||||
|
* {@link #initialize(EObject, File, List)} or
|
||||||
|
* {@link #initialize(URI, File, List)} is called.
|
||||||
|
* <p>
|
||||||
|
* The main reason for this constructor is to allow clients of this
|
||||||
|
* generation to call it from another Java file, as it allows for the
|
||||||
|
* retrieval of {@link #getProperties()} and
|
||||||
|
* {@link #getGenerationListeners()}.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public Todot() {
|
||||||
|
// Empty implementation
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This allows clients to instantiates a generator with all required information.
|
||||||
|
*
|
||||||
|
* @param modelURI
|
||||||
|
* URI where the model on which this generator will be used is located.
|
||||||
|
* @param targetFolder
|
||||||
|
* This will be used as the output folder for this generation : it will be the base path
|
||||||
|
* against which all file block URLs will be resolved.
|
||||||
|
* @param arguments
|
||||||
|
* If the template which will be called requires more than one argument taken from the model,
|
||||||
|
* pass them here.
|
||||||
|
* @throws IOException
|
||||||
|
* This can be thrown in three scenarios : the module cannot be found, it cannot be loaded, or
|
||||||
|
* the model cannot be loaded.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public Todot(URI modelURI, File targetFolder,
|
||||||
|
List<? extends Object> arguments) throws IOException {
|
||||||
|
initialize(modelURI, targetFolder, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This allows clients to instantiates a generator with all required information.
|
||||||
|
*
|
||||||
|
* @param model
|
||||||
|
* We'll iterate over the content of this element to find Objects matching the first parameter
|
||||||
|
* of the template we need to call.
|
||||||
|
* @param targetFolder
|
||||||
|
* This will be used as the output folder for this generation : it will be the base path
|
||||||
|
* against which all file block URLs will be resolved.
|
||||||
|
* @param arguments
|
||||||
|
* If the template which will be called requires more than one argument taken from the model,
|
||||||
|
* pass them here.
|
||||||
|
* @throws IOException
|
||||||
|
* This can be thrown in two scenarios : the module cannot be found, or it cannot be loaded.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public Todot(EObject model, File targetFolder,
|
||||||
|
List<? extends Object> arguments) throws IOException {
|
||||||
|
initialize(model, targetFolder, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to launch the generation from a standalone application.
|
||||||
|
*
|
||||||
|
* @param args
|
||||||
|
* Arguments of the generation.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try {
|
||||||
|
if (args.length < 2) {
|
||||||
|
System.out.println("Arguments not valid : {model, folder}.");
|
||||||
|
} else {
|
||||||
|
URI modelURI = URI.createFileURI(args[0]);
|
||||||
|
File folder = new File(args[1]);
|
||||||
|
|
||||||
|
List<String> arguments = new ArrayList<String>();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add in this list all the arguments used by the starting point of the generation
|
||||||
|
* If your main template is called on an element of your model and a String, you can
|
||||||
|
* add in "arguments" this "String" attribute.
|
||||||
|
*/
|
||||||
|
|
||||||
|
Todot generator = new Todot(modelURI, folder, arguments);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add the properties from the launch arguments.
|
||||||
|
* If you want to programmatically add new properties, add them in "propertiesFiles"
|
||||||
|
* You can add the absolute path of a properties files, or even a project relative path.
|
||||||
|
* If you want to add another "protocol" for your properties files, please override
|
||||||
|
* "getPropertiesLoaderService(AcceleoService)" in order to return a new property loader.
|
||||||
|
* The behavior of the properties loader service is explained in the Acceleo documentation
|
||||||
|
* (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
|
||||||
|
for (int i = 2; i < args.length; i++) {
|
||||||
|
generator.addPropertiesFile(args[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
generator.doGenerate(new BasicMonitor());
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Launches the generation described by this instance.
|
||||||
|
*
|
||||||
|
* @param monitor
|
||||||
|
* This will be used to display progress information to the user.
|
||||||
|
* @throws IOException
|
||||||
|
* This will be thrown if any of the output files cannot be saved to disk.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void doGenerate(Monitor monitor) throws IOException {
|
||||||
|
/*
|
||||||
|
* TODO if you wish to change the generation as a whole, override this. The default behavior should
|
||||||
|
* be sufficient in most cases. If you want to change the content of this method, do NOT forget to
|
||||||
|
* change the "@generated" tag in the Javadoc of this method to "@generated NOT". Without this new tag,
|
||||||
|
* any compilation of the Acceleo module with the main template that has caused the creation of this
|
||||||
|
* class will revert your modifications. If you encounter a problem with an unresolved proxy during the
|
||||||
|
* generation, you can remove the comments in the following instructions to check for problems. Please
|
||||||
|
* note that those instructions may have a significant impact on the performances.
|
||||||
|
*/
|
||||||
|
|
||||||
|
//org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(model);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to check for potential errors in your models before the launch of the generation, you
|
||||||
|
* use the code below.
|
||||||
|
*/
|
||||||
|
|
||||||
|
//if (model != null && model.eResource() != null) {
|
||||||
|
// List<org.eclipse.emf.ecore.resource.Resource.Diagnostic> errors = model.eResource().getErrors();
|
||||||
|
// for (org.eclipse.emf.ecore.resource.Resource.Diagnostic diagnostic : errors) {
|
||||||
|
// System.err.println(diagnostic.toString());
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
super.doGenerate(monitor);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If this generator needs to listen to text generation events, listeners can be returned from here.
|
||||||
|
*
|
||||||
|
* @return List of listeners that are to be notified when text is generated through this launch.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<IAcceleoTextGenerationListener> getGenerationListeners() {
|
||||||
|
List<IAcceleoTextGenerationListener> listeners = super.getGenerationListeners();
|
||||||
|
/*
|
||||||
|
* TODO if you need to listen to generation event, add listeners to the list here. If you want to change
|
||||||
|
* the content of this method, do NOT forget to change the "@generated" tag in the Javadoc of this method
|
||||||
|
* to "@generated NOT". Without this new tag, any compilation of the Acceleo module with the main template
|
||||||
|
* that has caused the creation of this class will revert your modifications.
|
||||||
|
*/
|
||||||
|
return listeners;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If you need to change the way files are generated, this is your entry point.
|
||||||
|
* <p>
|
||||||
|
* The default is {@link org.eclipse.acceleo.engine.generation.strategy.DefaultStrategy}; it generates
|
||||||
|
* files on the fly. If you only need to preview the results, return a new
|
||||||
|
* {@link org.eclipse.acceleo.engine.generation.strategy.PreviewStrategy}. Both of these aren't aware of
|
||||||
|
* the running Eclipse and can be used standalone.
|
||||||
|
* </p>
|
||||||
|
* <p>
|
||||||
|
* If you need the file generation to be aware of the workspace (A typical example is when you wanna
|
||||||
|
* override files that are under clear case or any other VCS that could forbid the overriding), then
|
||||||
|
* return a new {@link org.eclipse.acceleo.engine.generation.strategy.WorkspaceAwareStrategy}.
|
||||||
|
* <b>Note</b>, however, that this <b>cannot</b> be used standalone.
|
||||||
|
* </p>
|
||||||
|
* <p>
|
||||||
|
* All three of these default strategies support merging through JMerge.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @return The generation strategy that is to be used for generations launched through this launcher.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public IAcceleoGenerationStrategy getGenerationStrategy() {
|
||||||
|
return super.getGenerationStrategy();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will be called in order to find and load the module that will be launched through this launcher.
|
||||||
|
* We expect this name not to contain file extension, and the module to be located beside the launcher.
|
||||||
|
*
|
||||||
|
* @return The name of the module that is to be launched.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String getModuleName() {
|
||||||
|
return MODULE_FILE_NAME;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If the module(s) called by this launcher require properties files, return their qualified path from
|
||||||
|
* here.Take note that the first added properties files will take precedence over subsequent ones if they
|
||||||
|
* contain conflicting keys.
|
||||||
|
*
|
||||||
|
* @return The list of properties file we need to add to the generation context.
|
||||||
|
* @see java.util.ResourceBundle#getBundle(String)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<String> getProperties() {
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO if your generation module requires access to properties files, add their qualified path to the list here.
|
||||||
|
*
|
||||||
|
* Properties files can be located in an Eclipse plug-in or in the file system (all Acceleo projects are Eclipse
|
||||||
|
* plug-in). In order to use properties files located in an Eclipse plugin, you need to add the path of the properties
|
||||||
|
* files to the "propertiesFiles" list:
|
||||||
|
*
|
||||||
|
* final String prefix = "platform:/plugin/";
|
||||||
|
* final String pluginName = "org.eclipse.acceleo.module.sample";
|
||||||
|
* final String packagePath = "/org/eclipse/acceleo/module/sample/properties/";
|
||||||
|
* final String fileName = "default.properties";
|
||||||
|
* propertiesFiles.add(prefix + pluginName + packagePath + fileName);
|
||||||
|
*
|
||||||
|
* With this mechanism, you can load properties files from your plugin or from another plugin.
|
||||||
|
*
|
||||||
|
* You may want to load properties files from the file system, for that you need to add the absolute path of the file:
|
||||||
|
*
|
||||||
|
* propertiesFiles.add("C:\Users\MyName\MyFile.properties");
|
||||||
|
*
|
||||||
|
* If you want to let your users add properties files located in the same folder as the model:
|
||||||
|
*
|
||||||
|
* if (EMFPlugin.IS_ECLIPSE_RUNNING && model != null && model.eResource() != null) {
|
||||||
|
* propertiesFiles.addAll(AcceleoEngineUtils.getPropertiesFilesNearModel(model.eResource()));
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
* To learn more about Properties Files, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
return propertiesFiles;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a properties file in the list of properties files.
|
||||||
|
*
|
||||||
|
* @param propertiesFile
|
||||||
|
* The properties file to add.
|
||||||
|
* @generated
|
||||||
|
* @since 3.1
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void addPropertiesFile(String propertiesFile) {
|
||||||
|
this.propertiesFiles.add(propertiesFile);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will be used to get the list of templates that are to be launched by this launcher.
|
||||||
|
*
|
||||||
|
* @return The list of templates to call on the module {@link #getModuleName()}.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String[] getTemplateNames() {
|
||||||
|
return TEMPLATE_NAMES;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to update the resource set's package registry with all needed EPackages.
|
||||||
|
*
|
||||||
|
* @param resourceSet
|
||||||
|
* The resource set which registry has to be updated.
|
||||||
|
* @generated NOT
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void registerPackages(ResourceSet resourceSet) {
|
||||||
|
super.registerPackages(resourceSet);
|
||||||
|
|
||||||
|
|
||||||
|
if (!isInWorkspace(SimplepdlPackage.class))
|
||||||
|
resourceSet.getPackageRegistry().put(
|
||||||
|
SimplepdlPackage.eNS_URI, SimplepdlPackage.eINSTANCE);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you need additional package registrations, you can register them here. The following line
|
||||||
|
* (in comment) is an example of the package registration for UML.
|
||||||
|
*
|
||||||
|
* You can use the method "isInWorkspace(Class c)" to check if the package that you are about to
|
||||||
|
* register is in the workspace.
|
||||||
|
*
|
||||||
|
* To register a package properly, please follow the following conventions:
|
||||||
|
*
|
||||||
|
* If the package is located in another plug-in, already installed in Eclipse. The following content should
|
||||||
|
* have been generated at the beginning of this method. Do not register the package using this mechanism if
|
||||||
|
* the metamodel is located in the workspace.
|
||||||
|
*
|
||||||
|
* if (!isInWorkspace(UMLPackage.class)) {
|
||||||
|
* // The normal package registration if your metamodel is in a plugin.
|
||||||
|
* resourceSet.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
* If the package is located in another project in your workspace, the plugin containing the package has not
|
||||||
|
* been register by EMF and Acceleo should register it automatically. If you want to use the generator in
|
||||||
|
* stand alone, the regular registration (seen a couple lines before) is needed.
|
||||||
|
*
|
||||||
|
* To learn more about Package Registration, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to update the resource set's resource factory registry with all needed factories.
|
||||||
|
*
|
||||||
|
* @param resourceSet
|
||||||
|
* The resource set which registry has to be updated.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void registerResourceFactories(ResourceSet resourceSet) {
|
||||||
|
super.registerResourceFactories(resourceSet);
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO If you need additional resource factories registrations, you can register them here. the following line
|
||||||
|
* (in comment) is an example of the resource factory registration.
|
||||||
|
*
|
||||||
|
* If you want to use the generator in stand alone, the resource factory registration will be required.
|
||||||
|
*
|
||||||
|
* To learn more about the registration of Resource Factories, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
|
||||||
|
// resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put(XyzResource.FILE_EXTENSION, XyzResource.Factory.INSTANCE);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Some metamodels require a very complex setup for standalone usage. For example, if you want to use a generator
|
||||||
|
* targetting UML models in standalone, you NEED to use the following:
|
||||||
|
*/
|
||||||
|
// UMLResourcesUtil.init(resourceSet)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
[comment encoding = UTF-8 /]
|
||||||
|
[module todot('http://simplepdl')]
|
||||||
|
|
||||||
|
[template public processToDot(aProcess : Process)]
|
||||||
|
[comment @main/]
|
||||||
|
[file (aProcess.name + '.dot', false, 'UTF-8')]
|
||||||
|
digraph "[aProcess.name/]" {
|
||||||
|
[let wss : OrderedSet(WorkSequence) = aProcess.getWSs() ]
|
||||||
|
[if (wss->size() > 0)]
|
||||||
|
[for (ws : WorkSequence | wss)]
|
||||||
|
[ws.afficher()/]
|
||||||
|
[/for]
|
||||||
|
[else]
|
||||||
|
[/if]
|
||||||
|
[/let]
|
||||||
|
}
|
||||||
|
[/file]
|
||||||
|
[/template]
|
||||||
|
|
||||||
|
[query public getWSs(p: Process) : OrderedSet(WorkSequence) =
|
||||||
|
p.processElements->select( e | e.oclIsTypeOf(WorkSequence) )
|
||||||
|
->collect( e | e.oclAsType(WorkSequence) )
|
||||||
|
->asOrderedSet()
|
||||||
|
/]
|
||||||
|
|
||||||
|
[template public afficher(ws : WorkSequence) post (trim()) ]
|
||||||
|
"[ws.predecessor.name/]" -> "[ws.successor.name/]" ['['/]arrowhead=vee label=[ws.linkType/][']'/]
|
||||||
|
[/template]
|
67
fr.n7.simplePDF.todot/tasks/todot.xml
Normal file
67
fr.n7.simplePDF.todot/tasks/todot.xml
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project default="todot" name="fr.n7.simplePDF.todot">
|
||||||
|
<property name="ECLIPSE_HOME" value="../../../../../mnt/n7fs/ens/tp_cregut/eclipse-gls-2020-09"/>
|
||||||
|
<property name="ECLIPSE_WORKSPACE" value="../.."/>
|
||||||
|
|
||||||
|
<!-- The classpath with only the dependencies used by the project -->
|
||||||
|
<path id="fr.n7.simplePDF.todot.libraryclasspath">
|
||||||
|
<pathelement location="${ECLIPSE_WORKSPACE}/fr.n7.simplePDF.todot/bin"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.runtime_3.19.0.v20200724-1004.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi_3.16.0.v20200828-0759.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi.compatibility.state_1.2.100.v20200811-1344.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.common_3.13.0.v20200828-1034.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.jobs_3.10.800.v20200421-0950.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.registry_3.9.0.v20200625-1425.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.preferences_3.8.0.v20200422-1833.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.contenttype_3.7.800.v20200724-0804.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.app_1.5.0.v20200717-0620.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.ecore_2.23.0.v20200630-0516.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.common_2.20.0.v20200822-0801.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.ecore.xmi_2.16.0.v20190528-0725.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl_3.15.100.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/lpg.runtime.java_2.0.17.v201004271640.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl.common_1.8.500.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl.ecore_3.15.100.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.common_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.model_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.profiler_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.engine_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.codegen.ecore_2.23.0.v20200701-0840.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.codegen_2.21.0.v20200708-0547.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/com.google.guava_27.1.0.v20190517-1946.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/fr.n7.idm.simplepdl_1.0.0.202110051623.jar"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<path id="fr.n7.simplePDF.todot.classpath">
|
||||||
|
<path refid="fr.n7.simplePDF.todot.libraryclasspath"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- The classpath with only the jars available in the plugin folder of Eclipse -->
|
||||||
|
<path id="fr.n7.simplePDF.todot.libraryclasspath.alljars">
|
||||||
|
<pathelement location="../fr.n7.simplePDF.todot/bin"/>
|
||||||
|
<fileset dir="${ECLIPSE_HOME}/plugins/" includes="*.jar"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<path id="fr.n7.simplePDF.todot.classpath.alljars">
|
||||||
|
<path refid="fr.n7.simplePDF.todot.libraryclasspath.alljars"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- The default task with the jars used by this project -->
|
||||||
|
<target name="todot">
|
||||||
|
<java classname="fr.n7.simplePDF.todot.main.Todot" classpathref="fr.n7.simplePDF.todot.classpath">
|
||||||
|
<arg value="${model}"/>
|
||||||
|
<arg value="${target}"/>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
In case of problem you can also try with all the jar available in your Eclipse
|
||||||
|
Keep in mind that having two versions of the same jar can create problems
|
||||||
|
-->
|
||||||
|
<target name="todot.alljars">
|
||||||
|
<java classname="fr.n7.simplePDF.todot.main.Todot" classpathref="fr.n7.simplePDF.todot.classpath">
|
||||||
|
<arg value="${model}"/>
|
||||||
|
<arg value="${target}"/>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
</project>
|
19
fr.n7.simplePDF.todot/tasks/todotTarget.xml
Normal file
19
fr.n7.simplePDF.todot/tasks/todotTarget.xml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!-- Place this file in the target project and call it with "External Tools > Run As > Ant Build" -->
|
||||||
|
<!-- You have to change the MODEL and the TARGET values -->
|
||||||
|
|
||||||
|
<project basedir="." default="todotSample" name="fr.n7.simplePDF.todotSample">
|
||||||
|
<import file="../../fr.n7.simplePDF.todot/tasks/todot.xml"/>
|
||||||
|
|
||||||
|
<!-- Change the values of MODEL and TARGET to point to your model and output folder -->
|
||||||
|
<property name="MODEL" value="${basedir}/model/file.xmi"/>
|
||||||
|
<property name="TARGET" value="${basedir}/src-gen"/>
|
||||||
|
|
||||||
|
<target name="todotSample" description="Generate files in 'TARGET'">
|
||||||
|
<antcall target="todot" >
|
||||||
|
<param name="model" value="${MODEL}"/>
|
||||||
|
<param name="target" value="${TARGET}"/>
|
||||||
|
</antcall>
|
||||||
|
</target>
|
||||||
|
</project>
|
|
@ -118,7 +118,7 @@ public class ResourceItemProvider extends ProcessElementItemProvider {
|
||||||
int qty = ((Resource)object).getQuantity();
|
int qty = ((Resource)object).getQuantity();
|
||||||
return label == null || label.length() == 0 ?
|
return label == null || label.length() == 0 ?
|
||||||
getString("_UI_Resource_type") :
|
getString("_UI_Resource_type") :
|
||||||
getString("_UI_Resource_type") + " " + label + "( " + qty + " )";
|
getString("_UI_Resource_type") + " " + label + " (" + qty + ")";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -134,7 +134,7 @@ public class WorkSequenceItemProvider extends ProcessElementItemProvider {
|
||||||
* This returns the label text for the adapted class.
|
* This returns the label text for the adapted class.
|
||||||
* <!-- begin-user-doc -->
|
* <!-- begin-user-doc -->
|
||||||
* <!-- end-user-doc -->
|
* <!-- end-user-doc -->
|
||||||
* @generated
|
* @generated NOT
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String getText(Object object) {
|
public String getText(Object object) {
|
||||||
|
|
|
@ -44,4 +44,18 @@
|
||||||
version="0.0.0"
|
version="0.0.0"
|
||||||
unpack="false"/>
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="fr.n7.simplePDL.toHTML"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
|
<plugin
|
||||||
|
id="fr.n7.simplePDL.toHTML.ui"
|
||||||
|
download-size="0"
|
||||||
|
install-size="0"
|
||||||
|
version="0.0.0"
|
||||||
|
unpack="false"/>
|
||||||
|
|
||||||
</feature>
|
</feature>
|
||||||
|
|
7
fr.n7.simplePDL.toHTML.ui/.classpath
Normal file
7
fr.n7.simplePDL.toHTML.ui/.classpath
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||||
|
<classpathentry kind="src" path="src"/>
|
||||||
|
<classpathentry kind="output" path="bin"/>
|
||||||
|
</classpath>
|
28
fr.n7.simplePDL.toHTML.ui/.project
Normal file
28
fr.n7.simplePDL.toHTML.ui/.project
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>fr.n7.simplePDL.toHTML.ui</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.pde.PluginNature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
|
@ -0,0 +1,6 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
|
||||||
|
org.eclipse.jdt.core.compiler.compliance=1.5
|
||||||
|
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||||
|
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||||
|
org.eclipse.jdt.core.compiler.source=1.5
|
20
fr.n7.simplePDL.toHTML.ui/META-INF/MANIFEST.MF
Normal file
20
fr.n7.simplePDL.toHTML.ui/META-INF/MANIFEST.MF
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Bundle-ManifestVersion: 2
|
||||||
|
Bundle-Name: Acceleo ToHTML Module IDE Plug-in
|
||||||
|
Bundle-SymbolicName: fr.n7.simplePDL.toHTML.ui;singleton:=true
|
||||||
|
Bundle-Version: 1.0.0.qualifier
|
||||||
|
Bundle-Activator: fr.n7.simplePDL.toHTML.ui.Activator
|
||||||
|
Bundle-Vendor: Eclipse Modeling Project
|
||||||
|
Require-Bundle: org.eclipse.ui,
|
||||||
|
org.eclipse.core.runtime,
|
||||||
|
org.eclipse.core.resources,
|
||||||
|
fr.n7.simplePDL.toHTML,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore.xmi,
|
||||||
|
org.eclipse.ocl,
|
||||||
|
org.eclipse.ocl.ecore,
|
||||||
|
org.eclipse.acceleo.model,
|
||||||
|
org.eclipse.acceleo.engine
|
||||||
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
|
Bundle-ActivationPolicy: lazy
|
||||||
|
Eclipse-LazyStart: true
|
7
fr.n7.simplePDL.toHTML.ui/build.properties
Normal file
7
fr.n7.simplePDL.toHTML.ui/build.properties
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
source.. = src/
|
||||||
|
output.. = bin/
|
||||||
|
bin.includes = META-INF/,\
|
||||||
|
.,\
|
||||||
|
plugin.xml,\
|
||||||
|
icons/
|
||||||
|
|
BIN
fr.n7.simplePDL.toHTML.ui/icons/default.gif
Normal file
BIN
fr.n7.simplePDL.toHTML.ui/icons/default.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 534 B |
22
fr.n7.simplePDL.toHTML.ui/plugin.xml
Normal file
22
fr.n7.simplePDL.toHTML.ui/plugin.xml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<?eclipse version="3.2"?>
|
||||||
|
<plugin>
|
||||||
|
<extension point="org.eclipse.ui.popupMenus">
|
||||||
|
<objectContribution
|
||||||
|
adaptable="true"
|
||||||
|
objectClass="org.eclipse.core.resources.IFile"
|
||||||
|
nameFilter="*.simplepdl"
|
||||||
|
id="fr.n7.simplePDL.toHTML.ui.popupMenus.contribution.IFile">
|
||||||
|
<menu id="org.eclipse.acceleo.module.menu" label="Acceleo Model to Text" path="additionsAcceleo">
|
||||||
|
<groupMarker name="acceleo"/>
|
||||||
|
</menu>
|
||||||
|
<action
|
||||||
|
class="fr.n7.simplePDL.toHTML.ui.popupMenus.AcceleoGenerateToHTMLAction"
|
||||||
|
enablesFor="+"
|
||||||
|
id="fr.n7.simplePDL.toHTML.ui.popupMenus.acceleoGenerateToHTMLAction"
|
||||||
|
icon="icons/default.gif"
|
||||||
|
label="Generate ToHTML"
|
||||||
|
menubarPath="org.eclipse.acceleo.module.menu/acceleo"/>
|
||||||
|
</objectContribution>
|
||||||
|
</extension>
|
||||||
|
</plugin>
|
|
@ -0,0 +1,66 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2012 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDL.toHTML.ui;
|
||||||
|
|
||||||
|
import org.eclipse.ui.plugin.AbstractUIPlugin;
|
||||||
|
import org.osgi.framework.BundleContext;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The activator class controls the plug-in life cycle.
|
||||||
|
*/
|
||||||
|
public class Activator extends AbstractUIPlugin {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The plug-in ID.
|
||||||
|
*/
|
||||||
|
public static final String PLUGIN_ID = "fr.n7.simplePDL.toHTML.ui";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The shared instance.
|
||||||
|
*/
|
||||||
|
private static Activator plugin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The constructor.
|
||||||
|
*/
|
||||||
|
public Activator() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**{@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public void start(BundleContext context) throws Exception {
|
||||||
|
super.start(context);
|
||||||
|
plugin = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**{@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public void stop(BundleContext context) throws Exception {
|
||||||
|
plugin = null;
|
||||||
|
super.stop(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the shared instance.
|
||||||
|
*
|
||||||
|
* @return the shared instance
|
||||||
|
*/
|
||||||
|
public static Activator getDefault() {
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,86 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2012 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDL.toHTML.ui.common;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.emf.common.util.BasicMonitor;
|
||||||
|
import org.eclipse.core.resources.IContainer;
|
||||||
|
import org.eclipse.core.runtime.IProgressMonitor;
|
||||||
|
import org.eclipse.emf.common.util.URI;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Main entry point of the 'ToHTML' generation module.
|
||||||
|
*/
|
||||||
|
public class GenerateAll {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The model URI.
|
||||||
|
*/
|
||||||
|
private URI modelURI;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The output folder.
|
||||||
|
*/
|
||||||
|
private IContainer targetFolder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The other arguments.
|
||||||
|
*/
|
||||||
|
List<? extends Object> arguments;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor.
|
||||||
|
*
|
||||||
|
* @param modelURI
|
||||||
|
* is the URI of the model.
|
||||||
|
* @param targetFolder
|
||||||
|
* is the output folder
|
||||||
|
* @param arguments
|
||||||
|
* are the other arguments
|
||||||
|
* @throws IOException
|
||||||
|
* Thrown when the output cannot be saved.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public GenerateAll(URI modelURI, IContainer targetFolder, List<? extends Object> arguments) {
|
||||||
|
this.modelURI = modelURI;
|
||||||
|
this.targetFolder = targetFolder;
|
||||||
|
this.arguments = arguments;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Launches the generation.
|
||||||
|
*
|
||||||
|
* @param monitor
|
||||||
|
* This will be used to display progress information to the user.
|
||||||
|
* @throws IOException
|
||||||
|
* Thrown when the output cannot be saved.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public void doGenerate(IProgressMonitor monitor) throws IOException {
|
||||||
|
if (!targetFolder.getLocation().toFile().exists()) {
|
||||||
|
targetFolder.getLocation().toFile().mkdirs();
|
||||||
|
}
|
||||||
|
|
||||||
|
monitor.subTask("Loading...");
|
||||||
|
fr.n7.simplePDL.toHTML.main.ToHTML gen0 = new fr.n7.simplePDL.toHTML.main.ToHTML(modelURI, targetFolder.getLocation().toFile(), arguments);
|
||||||
|
monitor.worked(1);
|
||||||
|
String generationID = org.eclipse.acceleo.engine.utils.AcceleoLaunchingUtil.computeUIProjectID("fr.n7.simplePDL.toHTML", "fr.n7.simplePDL.toHTML.main.ToHTML", modelURI.toString(), targetFolder.getFullPath().toString(), new ArrayList<String>());
|
||||||
|
gen0.setGenerationID(generationID);
|
||||||
|
gen0.doGenerate(BasicMonitor.toMonitor(monitor));
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,116 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2012 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDL.toHTML.ui.popupMenus;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
import org.eclipse.core.resources.IFile;
|
||||||
|
import org.eclipse.core.resources.IContainer;
|
||||||
|
import org.eclipse.core.resources.IResource;
|
||||||
|
import org.eclipse.core.runtime.CoreException;
|
||||||
|
import org.eclipse.core.runtime.IProgressMonitor;
|
||||||
|
import org.eclipse.core.runtime.IStatus;
|
||||||
|
import org.eclipse.core.runtime.Status;
|
||||||
|
import org.eclipse.emf.common.util.URI;
|
||||||
|
import org.eclipse.jface.action.IAction;
|
||||||
|
import org.eclipse.jface.operation.IRunnableWithProgress;
|
||||||
|
import org.eclipse.jface.viewers.ISelection;
|
||||||
|
import org.eclipse.jface.viewers.IStructuredSelection;
|
||||||
|
import fr.n7.simplePDL.toHTML.ui.Activator;
|
||||||
|
import fr.n7.simplePDL.toHTML.ui.common.GenerateAll;
|
||||||
|
import org.eclipse.ui.IActionDelegate;
|
||||||
|
import org.eclipse.ui.PlatformUI;
|
||||||
|
import org.eclipse.ui.actions.ActionDelegate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ToHTML code generation.
|
||||||
|
*/
|
||||||
|
public class AcceleoGenerateToHTMLAction extends ActionDelegate implements IActionDelegate {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Selected model files.
|
||||||
|
*/
|
||||||
|
protected List<IFile> files;
|
||||||
|
|
||||||
|
/**{@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.ui.actions.ActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public void selectionChanged(IAction action, ISelection selection) {
|
||||||
|
if (selection instanceof IStructuredSelection) {
|
||||||
|
files = ((IStructuredSelection) selection).toList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**{@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.ui.actions.ActionDelegate#run(org.eclipse.jface.action.IAction)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public void run(IAction action) {
|
||||||
|
if (files != null) {
|
||||||
|
IRunnableWithProgress operation = new IRunnableWithProgress() {
|
||||||
|
public void run(IProgressMonitor monitor) {
|
||||||
|
try {
|
||||||
|
Iterator<IFile> filesIt = files.iterator();
|
||||||
|
while (filesIt.hasNext()) {
|
||||||
|
IFile model = (IFile)filesIt.next();
|
||||||
|
URI modelURI = URI.createPlatformResourceURI(model.getFullPath().toString(), true);
|
||||||
|
IContainer targetFolder = null;
|
||||||
|
try {
|
||||||
|
IContainer target = model.getProject().getFolder("src-gen");
|
||||||
|
targetFolder = target;
|
||||||
|
GenerateAll generator = new GenerateAll(modelURI, targetFolder, getArguments());
|
||||||
|
generator.doGenerate(monitor);
|
||||||
|
} catch (IOException e) {
|
||||||
|
IStatus status = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e);
|
||||||
|
Activator.getDefault().getLog().log(status);
|
||||||
|
} finally {
|
||||||
|
if (targetFolder != null) {
|
||||||
|
targetFolder.getProject().refreshLocal(IResource.DEPTH_INFINITE, monitor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (CoreException e) {
|
||||||
|
IStatus status = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e);
|
||||||
|
Activator.getDefault().getLog().log(status);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
try {
|
||||||
|
PlatformUI.getWorkbench().getProgressService().run(true, true, operation);
|
||||||
|
} catch (InvocationTargetException e) {
|
||||||
|
IStatus status = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e);
|
||||||
|
Activator.getDefault().getLog().log(status);
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
IStatus status = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e);
|
||||||
|
Activator.getDefault().getLog().log(status);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Computes the arguments of the generator.
|
||||||
|
*
|
||||||
|
* @return the arguments
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
protected List<? extends Object> getArguments() {
|
||||||
|
return new ArrayList<String>();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
7
fr.n7.simplePDL.toHTML/.classpath
Normal file
7
fr.n7.simplePDL.toHTML/.classpath
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<classpath>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||||
|
<classpathentry kind="src" output="bin" path="src"/>
|
||||||
|
<classpathentry kind="output" path="bin"/>
|
||||||
|
</classpath>
|
50
fr.n7.simplePDL.toHTML/.project
Normal file
50
fr.n7.simplePDL.toHTML/.project
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>fr.n7.simplePDL.toHTML</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.acceleo.ide.ui.acceleoBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
<dictionary>
|
||||||
|
<key>compilation.kind</key>
|
||||||
|
<value>compilation.platform.resource</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>compliance</key>
|
||||||
|
<value>pragmatic</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>resource.kind</key>
|
||||||
|
<value>xmi</value>
|
||||||
|
</dictionary>
|
||||||
|
<dictionary>
|
||||||
|
<key>trim-position</key>
|
||||||
|
<value>false</value>
|
||||||
|
</dictionary>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.acceleo.ide.ui.acceleoNature</nature>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
<nature>org.eclipse.pde.PluginNature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
24
fr.n7.simplePDL.toHTML/META-INF/MANIFEST.MF
Normal file
24
fr.n7.simplePDL.toHTML/META-INF/MANIFEST.MF
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Bundle-ManifestVersion: 2
|
||||||
|
Bundle-Name: Acceleo ToHTML Module Runtime Plug-in
|
||||||
|
Bundle-SymbolicName: fr.n7.simplePDL.toHTML
|
||||||
|
Bundle-Version: 1.0.0.qualifier
|
||||||
|
Bundle-Activator: fr.n7.simplePDL.toHTML.Activator
|
||||||
|
Bundle-Vendor: Eclipse Modeling Project
|
||||||
|
Require-Bundle: org.eclipse.core.runtime,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore,
|
||||||
|
org.eclipse.emf.ecore.xmi,
|
||||||
|
org.eclipse.ocl,
|
||||||
|
org.eclipse.ocl.ecore,
|
||||||
|
org.eclipse.acceleo.common;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.model;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.profiler;bundle-version="3.3.0",
|
||||||
|
org.eclipse.acceleo.engine;bundle-version="3.3.0",
|
||||||
|
com.google.guava
|
||||||
|
Bundle-RequiredExecutionEnvironment: JavaSE-11
|
||||||
|
Bundle-ActivationPolicy: lazy
|
||||||
|
Eclipse-LazyStart: true
|
||||||
|
Export-Package: fr.n7.simplePDL.toHTML.main
|
||||||
|
Import-Package: simplepdl
|
||||||
|
|
5
fr.n7.simplePDL.toHTML/build.properties
Normal file
5
fr.n7.simplePDL.toHTML/build.properties
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
source.. = src/
|
||||||
|
output.. = bin/
|
||||||
|
bin.includes = META-INF/,\
|
||||||
|
.
|
||||||
|
jre.compilation.profile = JavaSE-11
|
|
@ -0,0 +1,66 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2011 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDL.toHTML;
|
||||||
|
|
||||||
|
import org.eclipse.core.runtime.Plugin;
|
||||||
|
import org.osgi.framework.BundleContext;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The activator class controls the plug-in life cycle.
|
||||||
|
*/
|
||||||
|
public class Activator extends Plugin {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The plug-in ID.
|
||||||
|
*/
|
||||||
|
public static final String PLUGIN_ID = "fr.n7.simplePDL.toHTML";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The shared instance.
|
||||||
|
*/
|
||||||
|
private static Activator plugin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The constructor.
|
||||||
|
*/
|
||||||
|
public Activator() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void start(BundleContext context) throws Exception {
|
||||||
|
super.start(context);
|
||||||
|
plugin = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*
|
||||||
|
* @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
|
||||||
|
*/
|
||||||
|
public void stop(BundleContext context) throws Exception {
|
||||||
|
plugin = null;
|
||||||
|
super.stop(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the shared instance.
|
||||||
|
*
|
||||||
|
* @return the shared instance
|
||||||
|
*/
|
||||||
|
public static Activator getDefault() {
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,418 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2008, 2012 Obeo.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Obeo - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package fr.n7.simplePDL.toHTML.main;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.acceleo.engine.event.IAcceleoTextGenerationListener;
|
||||||
|
import org.eclipse.acceleo.engine.generation.strategy.IAcceleoGenerationStrategy;
|
||||||
|
import org.eclipse.acceleo.engine.service.AbstractAcceleoGenerator;
|
||||||
|
import org.eclipse.emf.common.util.BasicMonitor;
|
||||||
|
import org.eclipse.emf.common.util.Monitor;
|
||||||
|
import org.eclipse.emf.common.util.URI;
|
||||||
|
import org.eclipse.emf.ecore.EObject;
|
||||||
|
import org.eclipse.emf.ecore.resource.ResourceSet;
|
||||||
|
import simplepdl.SimplepdlPackage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Entry point of the 'ToHTML' generation module.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public class ToHTML extends AbstractAcceleoGenerator {
|
||||||
|
/**
|
||||||
|
* The name of the module.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static final String MODULE_FILE_NAME = "/fr/n7/simplePDL/toHTML/main/toHTML";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The name of the templates that are to be generated.
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static final String[] TEMPLATE_NAMES = { "processToHTML" };
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The list of properties files from the launch parameters (Launch configuration).
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
private List<String> propertiesFiles = new ArrayList<String>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allows the public constructor to be used. Note that a generator created
|
||||||
|
* this way cannot be used to launch generations before one of
|
||||||
|
* {@link #initialize(EObject, File, List)} or
|
||||||
|
* {@link #initialize(URI, File, List)} is called.
|
||||||
|
* <p>
|
||||||
|
* The main reason for this constructor is to allow clients of this
|
||||||
|
* generation to call it from another Java file, as it allows for the
|
||||||
|
* retrieval of {@link #getProperties()} and
|
||||||
|
* {@link #getGenerationListeners()}.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public ToHTML() {
|
||||||
|
// Empty implementation
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This allows clients to instantiates a generator with all required information.
|
||||||
|
*
|
||||||
|
* @param modelURI
|
||||||
|
* URI where the model on which this generator will be used is located.
|
||||||
|
* @param targetFolder
|
||||||
|
* This will be used as the output folder for this generation : it will be the base path
|
||||||
|
* against which all file block URLs will be resolved.
|
||||||
|
* @param arguments
|
||||||
|
* If the template which will be called requires more than one argument taken from the model,
|
||||||
|
* pass them here.
|
||||||
|
* @throws IOException
|
||||||
|
* This can be thrown in three scenarios : the module cannot be found, it cannot be loaded, or
|
||||||
|
* the model cannot be loaded.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public ToHTML(URI modelURI, File targetFolder,
|
||||||
|
List<? extends Object> arguments) throws IOException {
|
||||||
|
initialize(modelURI, targetFolder, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This allows clients to instantiates a generator with all required information.
|
||||||
|
*
|
||||||
|
* @param model
|
||||||
|
* We'll iterate over the content of this element to find Objects matching the first parameter
|
||||||
|
* of the template we need to call.
|
||||||
|
* @param targetFolder
|
||||||
|
* This will be used as the output folder for this generation : it will be the base path
|
||||||
|
* against which all file block URLs will be resolved.
|
||||||
|
* @param arguments
|
||||||
|
* If the template which will be called requires more than one argument taken from the model,
|
||||||
|
* pass them here.
|
||||||
|
* @throws IOException
|
||||||
|
* This can be thrown in two scenarios : the module cannot be found, or it cannot be loaded.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public ToHTML(EObject model, File targetFolder,
|
||||||
|
List<? extends Object> arguments) throws IOException {
|
||||||
|
initialize(model, targetFolder, arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to launch the generation from a standalone application.
|
||||||
|
*
|
||||||
|
* @param args
|
||||||
|
* Arguments of the generation.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
public static void main(String[] args) {
|
||||||
|
try {
|
||||||
|
if (args.length < 2) {
|
||||||
|
System.out.println("Arguments not valid : {model, folder}.");
|
||||||
|
} else {
|
||||||
|
URI modelURI = URI.createFileURI(args[0]);
|
||||||
|
File folder = new File(args[1]);
|
||||||
|
|
||||||
|
List<String> arguments = new ArrayList<String>();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add in this list all the arguments used by the starting point of the generation
|
||||||
|
* If your main template is called on an element of your model and a String, you can
|
||||||
|
* add in "arguments" this "String" attribute.
|
||||||
|
*/
|
||||||
|
|
||||||
|
ToHTML generator = new ToHTML(modelURI, folder, arguments);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Add the properties from the launch arguments.
|
||||||
|
* If you want to programmatically add new properties, add them in "propertiesFiles"
|
||||||
|
* You can add the absolute path of a properties files, or even a project relative path.
|
||||||
|
* If you want to add another "protocol" for your properties files, please override
|
||||||
|
* "getPropertiesLoaderService(AcceleoService)" in order to return a new property loader.
|
||||||
|
* The behavior of the properties loader service is explained in the Acceleo documentation
|
||||||
|
* (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
|
||||||
|
for (int i = 2; i < args.length; i++) {
|
||||||
|
generator.addPropertiesFile(args[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
generator.doGenerate(new BasicMonitor());
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Launches the generation described by this instance.
|
||||||
|
*
|
||||||
|
* @param monitor
|
||||||
|
* This will be used to display progress information to the user.
|
||||||
|
* @throws IOException
|
||||||
|
* This will be thrown if any of the output files cannot be saved to disk.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void doGenerate(Monitor monitor) throws IOException {
|
||||||
|
/*
|
||||||
|
* TODO if you wish to change the generation as a whole, override this. The default behavior should
|
||||||
|
* be sufficient in most cases. If you want to change the content of this method, do NOT forget to
|
||||||
|
* change the "@generated" tag in the Javadoc of this method to "@generated NOT". Without this new tag,
|
||||||
|
* any compilation of the Acceleo module with the main template that has caused the creation of this
|
||||||
|
* class will revert your modifications. If you encounter a problem with an unresolved proxy during the
|
||||||
|
* generation, you can remove the comments in the following instructions to check for problems. Please
|
||||||
|
* note that those instructions may have a significant impact on the performances.
|
||||||
|
*/
|
||||||
|
|
||||||
|
//org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(model);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to check for potential errors in your models before the launch of the generation, you
|
||||||
|
* use the code below.
|
||||||
|
*/
|
||||||
|
|
||||||
|
//if (model != null && model.eResource() != null) {
|
||||||
|
// List<org.eclipse.emf.ecore.resource.Resource.Diagnostic> errors = model.eResource().getErrors();
|
||||||
|
// for (org.eclipse.emf.ecore.resource.Resource.Diagnostic diagnostic : errors) {
|
||||||
|
// System.err.println(diagnostic.toString());
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
super.doGenerate(monitor);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If this generator needs to listen to text generation events, listeners can be returned from here.
|
||||||
|
*
|
||||||
|
* @return List of listeners that are to be notified when text is generated through this launch.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<IAcceleoTextGenerationListener> getGenerationListeners() {
|
||||||
|
List<IAcceleoTextGenerationListener> listeners = super.getGenerationListeners();
|
||||||
|
/*
|
||||||
|
* TODO if you need to listen to generation event, add listeners to the list here. If you want to change
|
||||||
|
* the content of this method, do NOT forget to change the "@generated" tag in the Javadoc of this method
|
||||||
|
* to "@generated NOT". Without this new tag, any compilation of the Acceleo module with the main template
|
||||||
|
* that has caused the creation of this class will revert your modifications.
|
||||||
|
*/
|
||||||
|
return listeners;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If you need to change the way files are generated, this is your entry point.
|
||||||
|
* <p>
|
||||||
|
* The default is {@link org.eclipse.acceleo.engine.generation.strategy.DefaultStrategy}; it generates
|
||||||
|
* files on the fly. If you only need to preview the results, return a new
|
||||||
|
* {@link org.eclipse.acceleo.engine.generation.strategy.PreviewStrategy}. Both of these aren't aware of
|
||||||
|
* the running Eclipse and can be used standalone.
|
||||||
|
* </p>
|
||||||
|
* <p>
|
||||||
|
* If you need the file generation to be aware of the workspace (A typical example is when you wanna
|
||||||
|
* override files that are under clear case or any other VCS that could forbid the overriding), then
|
||||||
|
* return a new {@link org.eclipse.acceleo.engine.generation.strategy.WorkspaceAwareStrategy}.
|
||||||
|
* <b>Note</b>, however, that this <b>cannot</b> be used standalone.
|
||||||
|
* </p>
|
||||||
|
* <p>
|
||||||
|
* All three of these default strategies support merging through JMerge.
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @return The generation strategy that is to be used for generations launched through this launcher.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public IAcceleoGenerationStrategy getGenerationStrategy() {
|
||||||
|
return super.getGenerationStrategy();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will be called in order to find and load the module that will be launched through this launcher.
|
||||||
|
* We expect this name not to contain file extension, and the module to be located beside the launcher.
|
||||||
|
*
|
||||||
|
* @return The name of the module that is to be launched.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String getModuleName() {
|
||||||
|
return MODULE_FILE_NAME;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If the module(s) called by this launcher require properties files, return their qualified path from
|
||||||
|
* here.Take note that the first added properties files will take precedence over subsequent ones if they
|
||||||
|
* contain conflicting keys.
|
||||||
|
*
|
||||||
|
* @return The list of properties file we need to add to the generation context.
|
||||||
|
* @see java.util.ResourceBundle#getBundle(String)
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<String> getProperties() {
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO if your generation module requires access to properties files, add their qualified path to the list here.
|
||||||
|
*
|
||||||
|
* Properties files can be located in an Eclipse plug-in or in the file system (all Acceleo projects are Eclipse
|
||||||
|
* plug-in). In order to use properties files located in an Eclipse plugin, you need to add the path of the properties
|
||||||
|
* files to the "propertiesFiles" list:
|
||||||
|
*
|
||||||
|
* final String prefix = "platform:/plugin/";
|
||||||
|
* final String pluginName = "org.eclipse.acceleo.module.sample";
|
||||||
|
* final String packagePath = "/org/eclipse/acceleo/module/sample/properties/";
|
||||||
|
* final String fileName = "default.properties";
|
||||||
|
* propertiesFiles.add(prefix + pluginName + packagePath + fileName);
|
||||||
|
*
|
||||||
|
* With this mechanism, you can load properties files from your plugin or from another plugin.
|
||||||
|
*
|
||||||
|
* You may want to load properties files from the file system, for that you need to add the absolute path of the file:
|
||||||
|
*
|
||||||
|
* propertiesFiles.add("C:\Users\MyName\MyFile.properties");
|
||||||
|
*
|
||||||
|
* If you want to let your users add properties files located in the same folder as the model:
|
||||||
|
*
|
||||||
|
* if (EMFPlugin.IS_ECLIPSE_RUNNING && model != null && model.eResource() != null) {
|
||||||
|
* propertiesFiles.addAll(AcceleoEngineUtils.getPropertiesFilesNearModel(model.eResource()));
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
* To learn more about Properties Files, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
return propertiesFiles;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds a properties file in the list of properties files.
|
||||||
|
*
|
||||||
|
* @param propertiesFile
|
||||||
|
* The properties file to add.
|
||||||
|
* @generated
|
||||||
|
* @since 3.1
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void addPropertiesFile(String propertiesFile) {
|
||||||
|
this.propertiesFiles.add(propertiesFile);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This will be used to get the list of templates that are to be launched by this launcher.
|
||||||
|
*
|
||||||
|
* @return The list of templates to call on the module {@link #getModuleName()}.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public String[] getTemplateNames() {
|
||||||
|
return TEMPLATE_NAMES;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to update the resource set's package registry with all needed EPackages.
|
||||||
|
*
|
||||||
|
* @param resourceSet
|
||||||
|
* The resource set which registry has to be updated.
|
||||||
|
* @generated NOT
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void registerPackages(ResourceSet resourceSet) {
|
||||||
|
super.registerPackages(resourceSet);
|
||||||
|
|
||||||
|
if (!isInWorkspace(SimplepdlPackage.class))
|
||||||
|
resourceSet.getPackageRegistry().put(
|
||||||
|
SimplepdlPackage.eNS_URI, SimplepdlPackage.eINSTANCE);
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If you need additional package registrations, you can register them here. The following line
|
||||||
|
* (in comment) is an example of the package registration for UML.
|
||||||
|
*
|
||||||
|
* You can use the method "isInWorkspace(Class c)" to check if the package that you are about to
|
||||||
|
* register is in the workspace.
|
||||||
|
*
|
||||||
|
* To register a package properly, please follow the following conventions:
|
||||||
|
*
|
||||||
|
* If the package is located in another plug-in, already installed in Eclipse. The following content should
|
||||||
|
* have been generated at the beginning of this method. Do not register the package using this mechanism if
|
||||||
|
* the metamodel is located in the workspace.
|
||||||
|
*
|
||||||
|
* if (!isInWorkspace(UMLPackage.class)) {
|
||||||
|
* // The normal package registration if your metamodel is in a plugin.
|
||||||
|
* resourceSet.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
|
||||||
|
* }
|
||||||
|
*
|
||||||
|
* If the package is located in another project in your workspace, the plugin containing the package has not
|
||||||
|
* been register by EMF and Acceleo should register it automatically. If you want to use the generator in
|
||||||
|
* stand alone, the regular registration (seen a couple lines before) is needed.
|
||||||
|
*
|
||||||
|
* To learn more about Package Registration, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This can be used to update the resource set's resource factory registry with all needed factories.
|
||||||
|
*
|
||||||
|
* @param resourceSet
|
||||||
|
* The resource set which registry has to be updated.
|
||||||
|
* @generated
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void registerResourceFactories(ResourceSet resourceSet) {
|
||||||
|
super.registerResourceFactories(resourceSet);
|
||||||
|
/*
|
||||||
|
* If you want to change the content of this method, do NOT forget to change the "@generated"
|
||||||
|
* tag in the Javadoc of this method to "@generated NOT". Without this new tag, any compilation
|
||||||
|
* of the Acceleo module with the main template that has caused the creation of this class will
|
||||||
|
* revert your modifications.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO If you need additional resource factories registrations, you can register them here. the following line
|
||||||
|
* (in comment) is an example of the resource factory registration.
|
||||||
|
*
|
||||||
|
* If you want to use the generator in stand alone, the resource factory registration will be required.
|
||||||
|
*
|
||||||
|
* To learn more about the registration of Resource Factories, have a look at the Acceleo documentation (Help -> Help Contents).
|
||||||
|
*/
|
||||||
|
|
||||||
|
// resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put(XyzResource.FILE_EXTENSION, XyzResource.Factory.INSTANCE);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Some metamodels require a very complex setup for standalone usage. For example, if you want to use a generator
|
||||||
|
* targetting UML models in standalone, you NEED to use the following:
|
||||||
|
*/
|
||||||
|
// UMLResourcesUtil.init(resourceSet)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,45 @@
|
||||||
|
[comment encoding = UTF-8 /]
|
||||||
|
[module toHTML('http://simplepdl')]
|
||||||
|
|
||||||
|
[template public processToHTML(aProcess : Process)]
|
||||||
|
[comment @main/]
|
||||||
|
[file (aProcess.name + '.html', false, 'UTF-8')]
|
||||||
|
<head><title>[aProcess.name/]</title></head>
|
||||||
|
<body>
|
||||||
|
<h1>Process "[aProcess.name/]"</h1>
|
||||||
|
<h2>Work definitions</h2>
|
||||||
|
[let wds : OrderedSet(WorkDefinition) = aProcess.getWDs() ]
|
||||||
|
[if (wds->size() > 0)]
|
||||||
|
<ul>
|
||||||
|
[for (wd : WorkDefinition | wds)]
|
||||||
|
<li>[wd.toHTML()/]</li>
|
||||||
|
[/for]
|
||||||
|
</ul>
|
||||||
|
[else]
|
||||||
|
<b>None.</b>
|
||||||
|
[/if]
|
||||||
|
[/let]
|
||||||
|
</body>
|
||||||
|
[/file]
|
||||||
|
[/template]
|
||||||
|
|
||||||
|
[query public getWDs(p: Process) : OrderedSet(WorkDefinition) =
|
||||||
|
p.processElements->select( e | e.oclIsTypeOf(WorkDefinition) )
|
||||||
|
->collect( e | e.oclAsType(WorkDefinition) )
|
||||||
|
->asOrderedSet()
|
||||||
|
/]
|
||||||
|
|
||||||
|
[query public toState(link: WorkSequenceType) : String =
|
||||||
|
if link = WorkSequenceType::startToStart or link = WorkSequenceType::startToFinish then
|
||||||
|
'started'
|
||||||
|
else
|
||||||
|
'finished'
|
||||||
|
endif
|
||||||
|
/]
|
||||||
|
|
||||||
|
[template public toHTML(wd : WorkDefinition) post (trim()) ]
|
||||||
|
[wd.name /] [for (ws: WorkSequence | wd.linksToPredecessors)
|
||||||
|
before (' requires ') separator (', ') after('.')
|
||||||
|
][ws.predecessor.name /] to be [ws.linkType.toState()
|
||||||
|
/][/for]
|
||||||
|
[/template]
|
67
fr.n7.simplePDL.toHTML/tasks/toHTML.xml
Normal file
67
fr.n7.simplePDL.toHTML/tasks/toHTML.xml
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project default="toHTML" name="fr.n7.simplePDL.toHTML">
|
||||||
|
<property name="ECLIPSE_HOME" value="../../../../../mnt/n7fs/ens/tp_cregut/eclipse-gls-2020-09"/>
|
||||||
|
<property name="ECLIPSE_WORKSPACE" value="../.."/>
|
||||||
|
|
||||||
|
<!-- The classpath with only the dependencies used by the project -->
|
||||||
|
<path id="fr.n7.simplePDL.toHTML.libraryclasspath">
|
||||||
|
<pathelement location="${ECLIPSE_WORKSPACE}/fr.n7.simplePDL.toHTML/bin"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.runtime_3.19.0.v20200724-1004.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi_3.16.0.v20200828-0759.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.osgi.compatibility.state_1.2.100.v20200811-1344.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.common_3.13.0.v20200828-1034.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.jobs_3.10.800.v20200421-0950.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.registry_3.9.0.v20200625-1425.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.preferences_3.8.0.v20200422-1833.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.core.contenttype_3.7.800.v20200724-0804.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.equinox.app_1.5.0.v20200717-0620.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.ecore_2.23.0.v20200630-0516.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.common_2.20.0.v20200822-0801.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.ecore.xmi_2.16.0.v20190528-0725.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl_3.15.100.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/lpg.runtime.java_2.0.17.v201004271640.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl.common_1.8.500.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.ocl.ecore_3.15.100.v20201208-2229.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.common_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.model_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.profiler_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.acceleo.engine_3.7.11.202102190929.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.codegen.ecore_2.23.0.v20200701-0840.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/org.eclipse.emf.codegen_2.21.0.v20200708-0547.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/com.google.guava_27.1.0.v20190517-1946.jar"/>
|
||||||
|
<pathelement location="${ECLIPSE_HOME}/plugins/fr.n7.idm.simplepdl_1.0.0.202110051623.jar"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<path id="fr.n7.simplePDL.toHTML.classpath">
|
||||||
|
<path refid="fr.n7.simplePDL.toHTML.libraryclasspath"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- The classpath with only the jars available in the plugin folder of Eclipse -->
|
||||||
|
<path id="fr.n7.simplePDL.toHTML.libraryclasspath.alljars">
|
||||||
|
<pathelement location="../fr.n7.simplePDL.toHTML/bin"/>
|
||||||
|
<fileset dir="${ECLIPSE_HOME}/plugins/" includes="*.jar"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<path id="fr.n7.simplePDL.toHTML.classpath.alljars">
|
||||||
|
<path refid="fr.n7.simplePDL.toHTML.libraryclasspath.alljars"/>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- The default task with the jars used by this project -->
|
||||||
|
<target name="toHTML">
|
||||||
|
<java classname="fr.n7.simplePDL.toHTML.main.ToHTML" classpathref="fr.n7.simplePDL.toHTML.classpath">
|
||||||
|
<arg value="${model}"/>
|
||||||
|
<arg value="${target}"/>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
In case of problem you can also try with all the jar available in your Eclipse
|
||||||
|
Keep in mind that having two versions of the same jar can create problems
|
||||||
|
-->
|
||||||
|
<target name="toHTML.alljars">
|
||||||
|
<java classname="fr.n7.simplePDL.toHTML.main.ToHTML" classpathref="fr.n7.simplePDL.toHTML.classpath">
|
||||||
|
<arg value="${model}"/>
|
||||||
|
<arg value="${target}"/>
|
||||||
|
</java>
|
||||||
|
</target>
|
||||||
|
</project>
|
19
fr.n7.simplePDL.toHTML/tasks/toHTMLTarget.xml
Normal file
19
fr.n7.simplePDL.toHTML/tasks/toHTMLTarget.xml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!-- Place this file in the target project and call it with "External Tools > Run As > Ant Build" -->
|
||||||
|
<!-- You have to change the MODEL and the TARGET values -->
|
||||||
|
|
||||||
|
<project basedir="." default="toHTMLSample" name="fr.n7.simplePDL.toHTMLSample">
|
||||||
|
<import file="../../fr.n7.simplePDL.toHTML/tasks/toHTML.xml"/>
|
||||||
|
|
||||||
|
<!-- Change the values of MODEL and TARGET to point to your model and output folder -->
|
||||||
|
<property name="MODEL" value="${basedir}/model/file.xmi"/>
|
||||||
|
<property name="TARGET" value="${basedir}/src-gen"/>
|
||||||
|
|
||||||
|
<target name="toHTMLSample" description="Generate files in 'TARGET'">
|
||||||
|
<antcall target="toHTML" >
|
||||||
|
<param name="model" value="${MODEL}"/>
|
||||||
|
<param name="target" value="${TARGET}"/>
|
||||||
|
</antcall>
|
||||||
|
</target>
|
||||||
|
</project>
|
|
@ -0,0 +1,9 @@
|
||||||
|
<head><title>Mon premier processus</title></head>
|
||||||
|
<body>
|
||||||
|
<h1>Process "Mon premier processus"</h1>
|
||||||
|
<h2>Work definitions</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Ma première WorkDefinition, quelle émotion</li>
|
||||||
|
<li>Ma deuxième WorkDefinition, toujours autant d'émotion requires Ma première WorkDefinition, quelle émotion to be finished, Ma première WorkDefinition, quelle émotion to be started.</li>
|
||||||
|
</ul>
|
||||||
|
</body>
|
Loading…
Reference in a new issue