Skip to content

Commit

Permalink
Concurrent execution framework, rehauled and extended (#235)
Browse files Browse the repository at this point in the history
* Add Footprint EClass to trace mse metamodel
rebase wrt master (jd)

* Ensure UTF-8 encoding

* Bump xtend compiler to 2.22.0
rebase wrt master (jd)

* Undo xtend bump

* Format + fix null pointers in setTimelineProvider
rebase wrt master (jd)

* Add Footprint EClass to trace metamodel
rebase wrt master (jd)

* Move commons from modeldebugging repository to dedicated repository (#223)
rebase wrt master (jd)
* use commons from new gemoc-studio-commons repository

* Split commons eclipse pde to remove UI dependency (#224)

* use new  commons.eclipse.pde.ui plugin

* adapt to commons.eclipse.pde

* reduce dependencies

use GemocPlugin in commons.eclipse instead of commons.eclipse.pde

* Bump xtend compiler to 2.22.0
rebase wrt master (jd)

* Add Footprint EClass to trace metamodel
(rebase from master JD)

* update changelog
(rebase from master JD)

* update changelog

* Bump to Eclipse 2022-06 (#222)
(rebase from master JD)
* bump to tycho 2.7.3

* use newer version of xtext

* update for use of Sirius 7.0.1

follows https://bugs.eclipse.org/bugs/show_bug.cgi?id=531282

* java min version 11

* remove some warning generated by trace addon generator

* increase delay before waiting for jobs

* java 11

* add better clean workspace method + remove deprecated xtext test api

the clean workspace is now able to remove previous content from crashed
executions

* bump to GEMOC 3.6.0

contributes to eclipse-gemoc/gemoc-studio#270

* Add Footprint EClass to trace mse metamodel
rebase wrt master (jd)

* Add Footprint EClass to trace metamodel
rebase wrt master (jd)

* Add Footprint EClass to trace metamodel
rebase wrt master (jd)

* Move commons from modeldebugging repository to dedicated repository (#223)
rebase wrt master (jd)
* use commons from new gemoc-studio-commons repository

* Add Footprint EClass to trace metamodel
rebase wrt master (jd)

* Add Footprint EClass to trace mse metamodel
rebase wrt master (jd)

* clean pom

* update trace generated code

* Add common concurrency classes (moved from moccml engine)

* Add Choco jar

* Remove _ from package name

* Force java 17 in engine.ui

* Move AbstractConcurrentLauncher

* Bump xtend 2.32.0

* Add missing xtend-gen src folder

* Add more concurrency code

---------

Co-authored-by: Steffen Zschaler <[email protected]>
Co-authored-by: Erwan Bousse <[email protected]>
Co-authored-by: Didier Vojtisek <[email protected]>
Co-authored-by: julien deantoni <[email protected]>
  • Loading branch information
5 people authored Oct 4, 2023
1 parent 67f6962 commit e711b15
Show file tree
Hide file tree
Showing 178 changed files with 6,488 additions and 732 deletions.
71 changes: 36 additions & 35 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@

#### Enhancements:

- [**enhancement**] Initial version of a Webprotocol based EngineAddon server [#220](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/220)
- [**enhancement**] Initial version of a Webprotocol based EngineAddon server [#220](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/220)
- [**enhancement**] Add generic trace edit [#208](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/208)
- [**enhancement**] Event management integration [#210](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/210)
Expand Down Expand Up @@ -353,7 +354,7 @@
---

## v3.0.0 (17/07/2018)
*Includes all changes from 3.0.0 release candidates.*
*Includes all changes from 3.0.0 release candidates.*

---

Expand Down Expand Up @@ -393,41 +394,41 @@
---

## v3.0.0-rc2 (10/04/2018)

#### Enhancements:

- [**enhancement**] re-activate equivalency classes computing [#22](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/22)
- [**enhancement**] Add a default value that should be used for swtbot tests of gemoc [#19](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/19)

#### Version upgrades

- [**bump**] Update tycho to version 1.0.0 [#13](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/13)

#### Enhancements:

- [**enhancement**] re-activate equivalency classes computing [#22](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/22)
- [**enhancement**] Add a default value that should be used for swtbot tests of gemoc [#19](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/19)

#### Version upgrades

- [**bump**] Update tycho to version 1.0.0 [#13](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/13)

---

## v3.0.0-rc1 (07/12/2017)

#### Enhancements:

- [**enhancement**] Improve xdsml test suites [#18](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/18)
- [**enhancement**] Improve gemoc project template wizard [#5](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/5)

#### Bug Fixes:

- [**bug**] Fsm example fix [#2](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/2)

#### Refactorings

- [**refactoring**] Mass rename org.gemoc -> org.eclipse.gemoc [#9](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/9)
- [**refactoring**] Rename abstract dsl launch configuration delegate ui [#8](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/8)

#### Version upgrades

- [**bump**] Upgrade k3 to latest version [#15](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/15)
- [**bump**] Migrate to Eclipse oxygen [#11](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/11)
- [**bump**] Upgrade GEMOC version to 2.4.0.qualifier [#3](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/3)

#### Release Engineering

- [**releng**] Remove old releng files with ref to Eclipse Neon [#12](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/12)
- [**releng**] Local full build support [#1](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/1)

#### Enhancements:

- [**enhancement**] Improve xdsml test suites [#18](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/18)
- [**enhancement**] Improve gemoc project template wizard [#5](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/5)

#### Bug Fixes:

- [**bug**] Fsm example fix [#2](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/2)

#### Refactorings

- [**refactoring**] Mass rename org.gemoc -> org.eclipse.gemoc [#9](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/9)
- [**refactoring**] Rename abstract dsl launch configuration delegate ui [#8](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/8)

#### Version upgrades

- [**bump**] Upgrade k3 to latest version [#15](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/15)
- [**bump**] Migrate to Eclipse oxygen [#11](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/11)
- [**bump**] Upgrade GEMOC version to 2.4.0.qualifier [#3](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/3)

#### Release Engineering

- [**releng**] Remove old releng files with ref to Eclipse Neon [#12](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/12)
- [**releng**] Local full build support [#1](https://github.com/eclipse/gemoc-studio-modeldebugging/pull/1)
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,6 @@
</accessrules>
</classpathentry>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="xtend-gen"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
Expand Down Expand Up @@ -34,5 +39,6 @@
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
</natures>
</projectDescription>
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,18 @@ Require-Bundle: org.eclipse.gemoc.xdsmlframework.api,
org.eclipse.ui.workbench,
org.eclipse.ui.ide;bundle-version="3.14.0"
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-11
Bundle-RequiredExecutionEnvironment: JavaSE-17
Export-Package: org.eclipse.gemoc.executionframework.engine.ui,
org.eclipse.gemoc.executionframework.engine.ui.concurrency,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.deciders,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.deciders.actions,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.launcher,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.strategies,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.strategies.concurrency,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.strategies.filters,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.strategyselector,
org.eclipse.gemoc.executionframework.engine.ui.concurrency.views.step,
org.eclipse.gemoc.executionframework.engine.ui.genericdebugmodel,
org.eclipse.gemoc.executionframework.engine.ui.launcher,
org.eclipse.gemoc.executionframework.engine.ui.launcher.tabs,
org.eclipse.gemoc.executionframework.engine.ui.provider
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
source.. = src/
source.. = src/,\
xtend-gen/
output.. = bin/
bin.includes = META-INF/,\
.,\
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,84 @@
name="GEMOC Generic Source Locator">
</sourceLocator>
</extension>



<extension
point="org.eclipse.gemoc.gemoc_language_workbench.deciders">
<DeciderSpecification
Class="org.eclipse.gemoc.executionframework.engine.ui.concurrency.deciders.StepByStepUserDecider"
Icon="icons/user-shield-green-16.png"
Name="Step by step user decider">
</DeciderSpecification>
<DeciderSpecification
Class="org.eclipse.gemoc.executionframework.engine.ui.concurrency.deciders.UserDecider"
Icon="icons/user-shield-black-16.png"
Name="User decider">
</DeciderSpecification>
</extension>

<extension
point="org.eclipse.ui.views">
<category
id="org.eclipse.gemoc.executionframework.ui.category"
name="Gemoc">
</category>

<view
category="org.eclipse.gemoc.executionframework.ui.category"
class="org.eclipse.gemoc.executionframework.engine.ui.concurrency.views.step.LogicalStepsView"
icon="icons/IconeGemocModel-16.png"
id="org.eclipse.gemoc.executionframework.engine.io.views.steps.LogicalStepsView"
name="Concurrent Logical Steps Decider">
</view>

<view
category="org.eclipse.gemoc.executionframework.ui.category"
class="org.eclipse.gemoc.executionframework.engine.ui.concurrency.strategyselector.StrategySelectionView"
icon="icons/IconeGemocModel-16.png"
id="org.eclipse.gemoc.executionframework.engine.io.views.StrategySelectionView"
name="Strategy Selection">
</view>


</extension>

<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension
targetID="org.eclipse.sirius.ui.tools.perspective.modeling">

<view
id="org.eclipse.gemoc.executionframework.engine.io.views.steps.LogicalStepsView"
minimized="false"
relationship="stack"
relative="org.eclipse.sirius.ui.tools.views.model.explorer"
visible="true">
</view>

<viewShortcut
id="org.eclipse.gemoc.executionframework.engine.io.views.steps.LogicalStepsView">
</viewShortcut>

</perspectiveExtension>
<perspectiveExtension
targetID="org.eclipse.debug.ui.DebugPerspective">


<view
id="org.eclipse.gemoc.executionframework.engine.io.views.steps.LogicalStepsView"
minimized="false"
ratio="0.5"
relationship="bottom"
relative="org.eclipse.gemoc.executionframework.ui.views.engine.EnginesStatusView"
visible="true">
</view>

<viewShortcut
id="org.eclipse.gemoc.executionframework.engine.io.views.steps.LogicalStepsView">
</viewShortcut>


</perspectiveExtension>
</extension>
</plugin>
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
/*******************************************************************************
* Copyright (c) 2017 INRIA and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* INRIA - initial API and implementation
* I3S Laboratory - API update and bug fix
*******************************************************************************/
package org.eclipse.gemoc.executionframework.engine.ui.concurrency;

import org.eclipse.ui.IStartup;

public class ModelingWorkbenchEarlyStartup implements IStartup {

@Override
public void earlyStartup() {
//nothing to do except making sure this plugin is started
// because PropertyTester seems to be fully activated only when the containing plugin is started

}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
/*******************************************************************************
* Copyright (c) 2017 INRIA and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* INRIA - initial API and implementation
* I3S Laboratory - API update and bug fix
*******************************************************************************/
package org.eclipse.gemoc.executionframework.engine.ui.concurrency;

import java.util.HashMap;

import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.graphics.Image;

public class SharedIcons {

public static ImageDescriptor ENGINE_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/settings-5-16.png");
public static ImageDescriptor RUNNING_ENGINE_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/services-16-green.png");
public static ImageDescriptor STOPPED_ENGINE_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/services-16-red.png");
public static ImageDescriptor WAITING_ENGINE_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/services-16-blue.png");

public static ImageDescriptor RESUME_ENGINE_DECIDER_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/resume-shield.png");
public static ImageDescriptor SUSPEND_ENGINE_DECIDER_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/suspend-shield.png");

public static ImageDescriptor LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/footprints-cat-16.png");

public static ImageDescriptor LOGICALSTEP_RUNNING_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/footprints-running-cat-16.png");

public static ImageDescriptor VISIBLE_EVENT_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/visible-16.png");
public static ImageDescriptor VISIBLE_EVENT_OVERLAY = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/visible-deco.png");

public static ImageDescriptor PAST_CHOSEN_LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/circle-blue-16.png");
public static ImageDescriptor PAST_POSSIBLE_LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/circle-blue-outline-16.png");
public static ImageDescriptor PRESENT_CHOSEN_LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/circle-green-16.png");
public static ImageDescriptor PRESENT_POSSIBLE_LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/circle-green-outline-16.png");
public static ImageDescriptor FUTUR_CHOSEN_LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/circle-yellow-16.png");
public static ImageDescriptor FUTUR_POSSIBLE_LOGICALSTEP_ICON = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/circle-yellow-outline-16.png");

public static ImageDescriptor FORCED_CLOCK_SET = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/new-forced-to-1-16.png");
public static ImageDescriptor FORCED_CLOCK_NOTSET = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/new-forced-to-0-16.png");
public static ImageDescriptor NOTFORCED_CLOCK_SET = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/new-free-to-1-16.png");
public static ImageDescriptor NOTFORCED_CLOCK_NOTSET = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/new-free-to-0-16.png");
public static ImageDescriptor INDECISION = ImageDescriptor.createFromFile(SharedIcons.class, "/icons/decision-16.png");

static HashMap<ImageDescriptor, Image> imageMap = new HashMap<ImageDescriptor, Image>();

static public Image getSharedImage(ImageDescriptor descriptor){
Image res = imageMap.get(descriptor);
if(res == null){
res = descriptor.createImage();
imageMap.put(descriptor, res);
}
return res;
}
}
Loading

0 comments on commit e711b15

Please sign in to comment.