Skip to content
Snippets Groups Projects
Commit 71ed4662 authored by StarryScythe's avatar StarryScythe
Browse files

removed grayed out options from ricght click menu; researched cause and ways...

removed grayed out options from ricght click menu; researched cause and ways to fix out of focus view for loaded diagrams
parent 0d8a1a89
No related branches found
No related tags found
No related merge requests found
......@@ -57,6 +57,7 @@ hours:
19.01.25 4h
26.01.25 8h
27.01.25 2h
06.03.25 8h
//------------------------------------------------------------------------------------------------------
see https://github.com/eclipse-theia/theia/blob/master/doc/Developing.md#prerequisite_native_keymap
......@@ -185,7 +186,27 @@ further things:
- https://github.com/eclipse-sprotty/sprotty/issues/94
next meeting: 3.2.25
#9 diagram not centered if opened
- https://github.com/eclipse-glsp/glsp/discussions/454
my assumption is, that fixing the alignment of the enclosing page shoul fix this problem
problem: editor opens view at fixed size and position - if the diagram is shifted from initial
view during modifications (i.e. open a diagram thats still in view, move it outside of view and save,
then relaod the page) it will stay out of view until fixed manually
potential solution (chatgpt): viewer.fitToViewport(); // no idea where this should go (client), but the function
// should align the diagram to the view
alternative: viewer.centerOnElement(); // doing so after every modification with the global page will ensure the diagram stys centralised but may interfere with navigation
#10 disconnect if reopened
cannot reproduce this; if the browser is reopened, open editor tabs seem to not really load
the diagram or the menu - can be fixed by closing editor (not browser) tabs and then reopening
them - potentially reloading the editor may also help
#11 remove tina, gray options in right-click
next meeting: 10.3.25
--------------------------------------------------------------------------------------------
......
......@@ -31,7 +31,8 @@ export class CopyIdCommandContribution implements CommandContribution {
{ id: CopyIdCommand.COPY_ID, label: 'Copy Id' },
new GLSPCommandHandler(this.shell, {
actions: context => [CopyToClipboardAction.create(context.selectedElements[0].id)],
isEnabled: context => !context.isReadonly && context.selectedElements.length === 1
isEnabled: context => !context.isReadonly && context.selectedElements.length === 1,
isVisible: context => !context.isReadonly && context.selectedElements.length === 1
})
);
}
......
......@@ -38,7 +38,8 @@ export class EditTokensMenuCommandContribution implements CommandContribution {
contextElementsId: [context.selectedElements[0].id]
})
],
isEnabled: context => !context.isReadonly && context.selectedElements.filter(isPlace).length === 1
isEnabled: context => !context.isReadonly && context.selectedElements.filter(isPlace).length === 1,
isVisible: context => !context.isReadonly && context.selectedElements.filter(isPlace).length === 1
})
);
}
......
......@@ -31,7 +31,8 @@ export class FireTransitionCommandContribution implements CommandContribution {
{ id: FireTransitionCommand.FIRE_TRANSITION, label: 'Fire Transition' },
new GLSPCommandHandler(this.shell, {
actions: context => [FireTransitionOperation.create(context.selectedElements.filter(isTransition)[0].id)],
isEnabled: context => !context.isReadonly && context.selectedElements.filter(isTransition).length === 1
isEnabled: context => !context.isReadonly && context.selectedElements.filter(isTransition).length === 1,
isVisible: context => !context.isReadonly && context.selectedElements.filter(isTransition).length === 1
})
);
}
......
......@@ -38,7 +38,8 @@ export class SignalClauseMenuCommandContribution implements CommandContribution
contextElementsId: [context.selectedElements[0].id]
})
],
isEnabled: context => !context.isReadonly && context.selectedElements.filter(isTransition).length === 1
isEnabled: context => !context.isReadonly && context.selectedElements.filter(isTransition).length === 1,
isVisible: context => !context.isReadonly && context.selectedElements.filter(isTransition).length === 1
})
);
}
......
<?xml version="1.0" encoding="UTF-8"?>
<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
<net id="SortingWorkflowSyncedSensorSafeSig" type="http://www.pnml.org/version-2009/grammar/ptnet">
<name>
<text>SortingWorkflowSyncedSensorSafeSig</text>
</name>
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<inputsignals>
<inputsignal>
<inputsignalID>Red</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>Blue</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>Green</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>PickSuccess</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>PlaceSuccess</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>PickFail</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>PlaceFail</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>Stop</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
<inputsignal>
<inputsignalID>Sensor</inputsignalID>
<initialvalue>false</initialvalue>
</inputsignal>
</inputsignals>
</toolspecific>
<page id="top">
<page id="SelectorPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="ObjectPoolRed">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorRed</subnet>
<balloonMarking>
<tokens>
<token>{"color" : "green", "name" : "green1", "pickSuccess" : "false", "placeSuccess" : "false",
"humanDetected" : "false", "sensorData" : "", "trace" : "", "locked" : "false" } </token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>ObjectPoolRed</text>
</name>
</place>
<place id="ObjectPoolBlue">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorBlue</subnet>
<balloonMarking>
<tokens>
<token>{"color" : "blue", "name" : "blue1", "pickSuccess" : "false", "placeSuccess" : "false",
"humanDetected" : "false", "sensorData" : "", "trace" : "", "locked" : "false" } </token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>ObjectPoolBlue</text>
</name>
</place>
<place id="ObjectPoolGreen">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorGreen</subnet>
<balloonMarking>
<tokens>
<token>{"color" : "red", "name" : "red1", "pickSuccess" : "false", "placeSuccess" : "false",
"humanDetected" : "false", "sensorData" : "", "trace" : "", "locked" : "false" } </token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>ObjectPoolGreen</text>
</name>
</place>
<transition id="SortRed">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorRed</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(Red)</inputsignalclause>
</toolspecific>
<name>
<text>SortRed</text>
</name>
</transition>
<transition id="SortBlue">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorBlue</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(Blue)</inputsignalclause>
</toolspecific>
<name>
<text>SortBlue</text>
</name>
</transition>
<transition id="SortGreen">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorGreen</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(Green)</inputsignalclause>
</toolspecific>
<name>
<text>SortGreen</text>
</name>
</transition>
<place id="RedOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorRed</subnet>
</toolspecific>
<name>
<text>RedOut</text>
</name>
</place>
<place id="BlueOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorBlue</subnet>
</toolspecific>
<name>
<text>BlueOut</text>
</name>
</place>
<place id="GreenOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorGreen</subnet>
</toolspecific>
<name>
<text>GreenOut</text>
</name>
</place>
<arc id="a1" source="SortRed" target="RedOut">
</arc>
<arc id="a2" source="SortBlue" target="BlueOut">
</arc>
<arc id="a3" source="SortGreen" target="GreenOut">
</arc>
<arc id="a4" source="ObjectPoolRed" target="SortRed">
</arc>
<arc id="a5" source="ObjectPoolBlue" target="SortBlue">
</arc>
<arc id="a6" source="ObjectPoolGreen" target="SortGreen">
</arc>
</page>
<transition id="LeftCellTopic">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>topicTransitionType</type>
<topicName>LeftCellTopic</topicName>
<publishers>
<publisher>
<id>RedOut</id>
<limit>10</limit>
</publisher>
<publisher>
<id>BlueOut</id>
<limit>10</limit>
</publisher>
</publishers>
<subscribers>
<subscriber>
<id>L-AwaitingControl</id>
<limit>10</limit>
</subscriber>
</subscribers>
</toolspecific>
<name>
<text>LeftCellTopic</text>
</name>
</transition>
<transition id="RightCellTopic">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>topicTransitionType</type>
<topicName>RightCellTopic</topicName>
<publishers>
<publisher>
<id>GreenOut</id>
<limit>10</limit>
</publisher>
</publishers>
<subscribers>
<subscriber>
<id>R-AwaitingControl</id>
<limit>10</limit>
</subscriber>
</subscribers>
</toolspecific>
<name>
<text>RightCellTopic</text>
</name>
</transition>
<transition id="UITopic">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>topicTransitionType</type>
<topicName>UITopic</topicName>
<publishers>
<publisher>
<id>L-Done</id>
<limit>10</limit>
</publisher>
<publisher>
<id>R-Done</id>
<limit>10</limit>
</publisher>
</publishers>
<subscribers>
<subscriber>
<id>FeedbackIn</id>
<limit>10</limit>
</subscriber>
</subscribers>
</toolspecific>
<name>
<text>UITopic</text>
</name>
</transition>
<page id="LeftControllerPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="L-AwaitingControl">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-AwaitingControl</text>
</name>
</place>
<place id="L-Ready">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-Ready</text>
</name>
</place>
<place id="L-ObjectPicked">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-ObjectPicked</text>
</name>
</place>
<place id="L-ObjectPlaced">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-ObjectPlaced</text>
</name>
</place>
<place id="L-Done">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-Done</text>
</name>
</place>
</page>
<page id="RightControllerPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="R-AwaitingControl">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-AwaitingControl</text>
</name>
</place>
<place id="R-Ready">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-Ready</text>
</name>
</place>
<place id="R-ObjectPicked">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-ObjectPicked</text>
</name>
</place>
<place id="R-ObjectPlaced">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-ObjectPlaced</text>
</name>
</place>
<place id="R-Done">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-Done</text>
</name>
</place>
</page>
<page id="FeedbackPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="FeedbackIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Feedback</node>
<subnet>Feedback</subnet>
</toolspecific>
<name>
<text>FeedbackIn</text>
</name>
</place>
<transition id="ShowFeedback">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Feedback</node>
<subnet>Feedback</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>ShowFeedback</text>
</name>
</transition>
<place id="FeedbackDone">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Feedback</node>
<subnet>Feedback</subnet>
</toolspecific>
<name>
<text>FeedbackDone</text>
</name>
</place>
<arc id="a7" source="FeedbackIn" target="ShowFeedback">
</arc>
<arc id="a8" source="ShowFeedback" target="FeedbackDone">
</arc>
</page>
<page id="SynchronizerPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<page id="GetControlService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>getControlService</serviceName>
</toolspecific>
<place id="GetControlIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
</toolspecific>
<name>
<text>GetControlIn</text>
</name>
</place>
<place id="GetControlOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
</toolspecific>
<name>
<text>GetControlOut</text>
</name>
</place>
<referencePlace id="GetSharedRef" ref="GetShared">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
</toolspecific>
<name>
<text>GetSharedRef</text>
</name>
</referencePlace>
<transition id="Get">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>Get</text>
</name>
</transition>
<arc id="a9" source="GetControlIn" target="Get">
</arc>
<arc id="a10" source="Get" target="GetControlOut">
</arc>
<arc id="a11" source="GetSharedRef" target="Get">
</arc>
</page>
<page id="EndControlService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>endControlService</serviceName>
</toolspecific>
<place id="EndControlIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
</toolspecific>
<name>
<text>EndControlIn</text>
</name>
</place>
<place id="EndControlOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
</toolspecific>
<name>
<text>EndControlOut</text>
</name>
</place>
<referencePlace id="GetEndSharedRef" ref="GetShared">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
</toolspecific>
<name>
<text>GetEndSharedRef</text>
</name>
</referencePlace>
<transition id="End">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>End</text>
</name>
</transition>
<arc id="a12" source="EndControlIn" target="End">
</arc>
<arc id="a13" source="End" target="EndControlOut">
</arc>
<arc id="a13b" source="End" target="GetEndSharedRef">
</arc>
</page>
<page id="SharedSpacePage">
<place id="GetShared">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>SharedSync</subnet>
<balloonMarking>
<tokens>
<token>{ "color":"NONE","name":"NONE","pickSuccess":"false","placeSuccess":"false",
"humanDetected":"false","sensorData":"NONE","trace":"NONE", "locked" : "true" }
</token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>GetShared</text>
</name>
</place>
</page>
</page>
<transition id="GetControlServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>getControlService</serviceName>
<serverInput>GetControlIn</serverInput>
<serverOutput>GetControlOut</serverOutput>
<serverCapacity>2</serverCapacity>
<channels>
<channel>
<cid>c1</cid>
<request>L-AwaitingControl</request>
<response>L-Ready</response>
</channel>
<channel>
<cid>c2</cid>
<request>R-AwaitingControl</request>
<response>R-Ready</response>
</channel>
</channels>
</toolspecific>
<name>
<text>GetControlServiceCall</text>
</name>
</transition>
<transition id="EndControlServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>endControlService</serviceName>
<serverInput>EndControlIn</serverInput>
<serverOutput>EndControlOut</serverOutput>
<serverCapacity>2</serverCapacity>
<channels>
<channel>
<cid>c3</cid>
<request>L-ObjectPlaced</request>
<response>L-Done</response>
</channel>
<channel>
<cid>c4</cid>
<request>R-ObjectPlaced</request>
<response>R-Done</response>
</channel>
</channels>
</toolspecific>
<name>
<text>EndControlServiceCall</text>
</name>
</transition>
<transition id="PickServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>pickService</serviceName>
<serverInput>PickInput</serverInput>
<serverOutput>PickOutput</serverOutput>
<serverCapacity>2</serverCapacity>
<channels>
<channel>
<cid>c5</cid>
<request>L-Ready</request>
<response>L-ObjectPicked</response>
</channel>
<channel>
<cid>c6</cid>
<request>R-Ready</request>
<response>R-ObjectPicked</response>
</channel>
</channels>
</toolspecific>
<name>
<text>PickServiceCall</text>
</name>
</transition>
<transition id="PlaceServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>placeService</serviceName>
<serverInput>PlaceInput</serverInput>
<serverOutput>PlaceOutput</serverOutput>
<serverCapacity>2</serverCapacity>
<channels>
<channel>
<cid>c7</cid>
<request>L-ObjectPicked</request>
<response>L-ObjectPlaced</response>
</channel>
<channel>
<cid>c8</cid>
<request>R-ObjectPicked</request>
<response>R-ObjectPlaced</response>
</channel>
</channels>
</toolspecific>
<name>
<text>PlaceServiceCall</text>
</name>
</transition>
<page id="ExecutorPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<page id="PickService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>pickService</serviceName>
</toolspecific>
<place id="PickInput">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
</toolspecific>
<name>
<text>PickInput</text>
</name>
</place>
<place id="Picking">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
</toolspecific>
<name>
<text>Picking</text>
</name>
</place>
<place id="PickOutput">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
</toolspecific>
<name>
<text>PickOutput</text>
</name>
</place>
<transition id="Pick">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>Pick</text>
</name>
</transition>
<transition id="PickingFail">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(PickFail)</inputsignalclause>
</toolspecific>
<name>
<text>PickingFail</text>
</name>
</transition>
<transition id="PickingSuccess">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(PickSuccess)</inputsignalclause>
</toolspecific>
<name>
<text>PickingSuccess</text>
</name>
</transition>
<transition id="PickingAbort">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>PickingAbort</text>
</name>
</transition>
<referencePlace id="PickSafeRef" ref="Safe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
</toolspecific>
<name>
<text>PickSafeRef</text>
</name>
</referencePlace>
<referencePlace id="PickUnsafeRef" ref="Unsafe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PickService</subnet>
</toolspecific>
<name>
<text>PickUnsafeRef</text>
</name>
</referencePlace>
<arc id="a15" source="PickInput" target="Pick">
</arc>
<arc id="a16" source="Pick" target="PickSafeRef">
</arc>
<arc id="a17" source="PickSafeRef" target="Pick">
</arc>
<arc id="a18" source="Pick" target="Picking">
</arc>
<arc id="a19" source="Picking" target="PickingFail">
</arc>
<arc id="a20" source="Picking" target="PickingSuccess">
</arc>
<arc id="a21" source="Picking" target="PickingAbort">
</arc>
<arc id="a22" source="PickingFail" target="PickOutput">
</arc>
<arc id="a23" source="PickingSuccess" target="PickOutput">
</arc>
<arc id="a24" source="PickingAbort" target="PickOutput">
</arc>
<arc id="a24n1" source="PickingAbort" target="PickUnsafeRef">
</arc>
<arc id="a24n2" source="PickUnsafeRef" target="PickingAbort">
</arc>
</page>
<page id="PlaceService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>placeService</serviceName>
</toolspecific>
<place id="PlaceInput">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
</toolspecific>
<name>
<text>PlaceInput</text>
</name>
</place>
<place id="Placing">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
</toolspecific>
<name>
<text>Placing</text>
</name>
</place>
<place id="PlaceOutput">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
</toolspecific>
<name>
<text>PlaceOutput</text>
</name>
</place>
<transition id="Place">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>Place</text>
</name>
</transition>
<transition id="PlacingFail">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(PlaceFail)</inputsignalclause>
</toolspecific>
<name>
<text>PlacingFail</text>
</name>
</transition>
<transition id="PlacingSuccess">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(PlaceSuccess)</inputsignalclause>
</toolspecific>
<name>
<text>PlacingSuccess</text>
</name>
</transition>
<transition id="PlacingAbort">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>PlaceingAbort</text>
</name>
</transition>
<referencePlace id="PlaceSafeRef" ref="Safe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
</toolspecific>
<name>
<text>PlaceSafeRef</text>
</name>
</referencePlace>
<referencePlace id="PlaceUnsafeRef" ref="Unsafe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>PlaceService</subnet>
</toolspecific>
<name>
<text>PlaceUnsafeRef</text>
</name>
</referencePlace>
<arc id="a25" source="PlaceInput" target="Place">
</arc>
<arc id="a26" source="Place" target="PlaceSafeRef">
</arc>
<arc id="a27" source="PlaceSafeRef" target="Place">
</arc>
<arc id="a28" source="Place" target="Placing">
</arc>
<arc id="a29" source="Placing" target="PlacingFail">
</arc>
<arc id="a30" source="Placing" target="PlacingSuccess">
</arc>
<arc id="a31" source="Placing" target="PlacingAbort">
</arc>
<arc id="a32" source="PlacingFail" target="PlaceOutput">
</arc>
<arc id="a33" source="PlacingSuccess" target="PlaceOutput">
</arc>
<arc id="a34" source="PlacingAbort" target="PlaceOutput">
</arc>
<arc id="a34n1" source="PlacingAbort" target="PlaceUnsafeRef">
</arc>
<arc id="a34n2" source="PlaceUnsafeRef" target="PlacingAbort">
</arc>
</page>
<page id="SafetyModel">
<place id="Unsafe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
<balloonMarking>
<tokens>
<token>{ "color":"NONE","name":"NONE","pickSuccess":"false","placeSuccess":"false",
"humanDetected":"false","sensorData":"NONE","trace":"-safety", "locked" : "true" }
</token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>Unsafe</text>
</name>
</place>
<place id="Safe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
</toolspecific>
<name>
<text>Safe</text>
</name>
</place>
<place id="SensorCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
</toolspecific>
<name>
<text>SensorCall</text>
</name>
</place>
<place id="SensorResponse">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
</toolspecific>
<name>
<text>SensorResponse</text>
</name>
</place>
<transition id="UnsafeToSensorCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>UnsafeToSensorCall</text>
</name>
</transition>
<transition id="SafeToUnsafe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(Stop)</inputsignalclause>
</toolspecific>
<name>
<text>SafeToUnsafe</text>
</name>
</transition>
<transition id="TransitionSafe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>TransitionSafe</text>
</name>
</transition>
<transition id="TransitionUnsafe">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>TransitionUnsafe</text>
</name>
</transition>
<transition id="SafeToSensorCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Executor</node>
<subnet>SafetyModel</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>SafeToSensorCall</text>
</name>
</transition>
<arc id="a49" source="Unsafe" target="UnsafeToSensorCall">
</arc>
<arc id="a50" source="UnsafeToSensorCall" target="SensorCall">
</arc>
<arc id="a51" source="Safe" target="SafeToUnsafe">
</arc>
<arc id="a52" source="SafeToUnsafe" target="Unsafe">
</arc>
<arc id="a53" source="SensorResponse" target="TransitionUnsafe">
</arc>
<arc id="a54" source="TransitionUnsafe" target="Unsafe">
</arc>
<arc id="a55" source="Safe" target="SafeToSensorCall">
</arc>
<arc id="a56" source="SafeToSensorCall" target="SensorCall">
</arc>
<arc id="a57" source="SensorResponse" target="TransitionSafe">
</arc>
<arc id="a58" source="TransitionSafe" target="Safe">
</arc>
</page>
</page>
<transition id="SensorServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>sensorService</serviceName>
<serverInput>SensorIn</serverInput>
<serverOutput>SensorOut</serverOutput>
<serverCapacity>1</serverCapacity>
<channels>
<channel>
<cid>c9</cid>
<request>SensorCall</request>
<response>SensorResponse</response>
</channel>
</channels>
</toolspecific>
<name>
<text>SensorServiceCall</text>
</name>
</transition>
<page id="SensorPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<page id="SensorService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>sensorService</serviceName>
</toolspecific>
<place id="SensorIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Sensorics</node>
<subnet>SensorService</subnet>
</toolspecific>
<name>
<text>SensorIn</text>
</name>
</place>
<place id="SensorInter">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Sensorics</node>
<subnet>SensorService</subnet>
</toolspecific>
<name>
<text>SensorInter</text>
</name>
</place>
<place id="SensorOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Sensorics</node>
<subnet>SensorService</subnet>
</toolspecific>
<name>
<text>SensorOut</text>
</name>
</place>
<transition id="GetSensorData">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Sensorics</node>
<subnet>SensorService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause>(Sensor)</inputsignalclause>
</toolspecific>
<name>
<text>GetSensorData</text>
</name>
</transition>
<transition id="ProcessSensorData">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Sensorics</node>
<subnet>SensorService</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>ProcessSensorData</text>
</name>
</transition>
<arc id="a59" source="SensorIn" target="GetSensorData">
</arc>
<arc id="a60" source="GetSensorData" target="SensorInter">
</arc>
<arc id="a61" source="SensorInter" target="ProcessSensorData">
</arc>
<arc id="a62" source="ProcessSensorData" target="SensorOut">
</arc>
</page>
</page>
</page>
</net>
</pnml>
......@@ -4,7 +4,7 @@
<page id="4d884d55-8758-4920-a868-f5f8a987888d">
<name text="NewPage0"/>
<nodegraphics>
<position x="336" y="4"/>
<position x="1268" y="777"/>
<dimension x="741" y="583"/>
</nodegraphics>
<arc id="c8912776-f1f9-420d-b2ee-a97af8b3290e" source="9dc009ee-13e0-48fa-ae9e-c4fb2259288d" target="d5fd7182-98e6-4af2-ad0b-72bb8f528c9a">
......
......@@ -21,13 +21,13 @@ org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull
org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=javax.annotation.ParametersAreNonnullByDefault
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable
org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
......@@ -91,15 +91,15 @@ org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning
org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
org.eclipse.jdt.core.compiler.problem.nullReference=warning
org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning
org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=ignore
org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
......@@ -113,7 +113,7 @@ org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled
org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment