diff options
author | tkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7> | 2013-04-10 18:50:35 +0000 |
---|---|---|
committer | tkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7> | 2013-04-10 18:50:35 +0000 |
commit | 5793f0dc194ae3519de7a12808d99aa2a555cd73 (patch) | |
tree | a89f97189ad1fded8728a681a18de202c7b7895e | |
parent | 3ee25188b65d9b5f4cb78419a50ebde0387005d6 (diff) | |
download | pdf-over-5793f0dc194ae3519de7a12808d99aa2a555cd73.tar.gz pdf-over-5793f0dc194ae3519de7a12808d99aa2a555cd73.tar.bz2 pdf-over-5793f0dc194ae3519de7a12808d99aa2a555cd73.zip |
StateMachine Proposal
git-svn-id: https://joinup.ec.europa.eu/svn/pdf-over/trunk@10 174cde9d-5d70-4d2a-aa98-46368bc2aaf7
12 files changed, 440 insertions, 0 deletions
diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/DeveloperMain.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/DeveloperMain.java new file mode 100644 index 00000000..1093f0fd --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/DeveloperMain.java @@ -0,0 +1,18 @@ +package at.asit.pdfover.gui; + +import at.asit.pdfover.gui.workflow.Workflow; + +public class DeveloperMain { + + /** + * Developer Main Entry point... + * @param args + */ + public static void main(String[] args) { + Workflow flow = new Workflow(); + flow.SetCmdArgs(args); + + flow.Start(); + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/Main.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/Main.java new file mode 100644 index 00000000..2eb27630 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/Main.java @@ -0,0 +1,13 @@ +package at.asit.pdfover.gui; + +public class Main { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/Workflow.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/Workflow.java new file mode 100644 index 00000000..14dbbcae --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/Workflow.java @@ -0,0 +1,150 @@ +package at.asit.pdfover.gui.workflow; + +import java.util.Properties; + +import org.eclipse.swt.SWT; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Display; +import org.eclipse.swt.widgets.Shell; + +public class Workflow { + /** + * @uml.property name="state" + * @uml.associationEnd multiplicity="(1 1)" aggregation="shared" + * inverse="workflow1:at.asit.pdfover.gui.workflow.WorkflowState" + */ + private WorkflowState state = new at.asit.pdfover.gui.workflow.states.PrepareConfigurationState(); + + /** + * Getter of the property <tt>state</tt> + * + * @return Returns the state. + * @uml.property name="state" + */ + public WorkflowState getState() { + return state; + } + + private String[] CmdArgs = new String[] {}; + + /** + * Sets the Cmd Arguments + * + * @param args + */ + public void SetCmdArgs(String[] args) { + this.CmdArgs = args; + } + + /** + * Gets the Cmd Arguments + * + * @return + */ + public String[] GetCmdArgs() { + return this.CmdArgs; + } + + private Properties persistent_state = new Properties(); + + /** + * Gets the Persistent State + * + * @return + */ + public Properties GetPersistentState() { + return this.persistent_state; + } + + /** + * Update Workflow logic and let state machine do its job... + */ + public void Update() { + WorkflowState next = null; + do { + this.state.Update(this); + next = this.state.NextState(); + } while (next != null); + } + + private Display display = null; + + private Shell shell = null; + + private Composite container = null; + + private void CreateMainWindow() { + //TODO: Instanciate Main Window Class + this.display = Display.getDefault(); + shell = new Shell(); + shell.setSize(608, 340); + shell.setText("PDFOver 4.0!! :)"); + + container = new Composite(shell, SWT.NONE); + container.setBounds(20, 44, 572, 257); + + shell.open(); + shell.layout(); + } + + /** + * Gets the Shell for drawing the ui + * + * @return + */ + public Composite GetComposite() { + // TODO: implement + // Main window will be build on first call + // returns SWT Composite container for states to draw their GUI + + if(this.container == null) { + this.CreateMainWindow(); + } + + if(this.container == null) { + // TODO throw Exception... + } + + return this.container; + } + + /** + * Only returns a shell if one was already created ... + * + * @return + */ + private Shell NonCreatingGetShell() { + return this.shell; + } + + /** + * Only returns a shell if one was already created ... + * + * @return + */ + private Display NonCreatingGetDisplay() { + return this.display; + } + + /** + * Workflow main entrance point + */ + public void Start() { + // Call update to start processing ... + this.Update(); + + // if a user interaction is required we have a shell ... + Shell shell = this.NonCreatingGetShell(); + Display display = this.NonCreatingGetDisplay(); + + if (shell != null && display != null) { + while (!shell.isDisposed()) { + if (!display.readAndDispatch()) { + display.sleep(); + } + } + display.dispose(); + } + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java new file mode 100644 index 00000000..5a4f1776 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java @@ -0,0 +1,32 @@ +package at.asit.pdfover.gui.workflow; + +/** + * Base state class + * @author afitzek + */ +public abstract class WorkflowState { + + private WorkflowState _next = null; + + /** + * Gets the next logical state or null if this their is no state transition + * @return + */ + public WorkflowState NextState() { + return this._next; + } + + /** + * Sets the next logical state + * @param state + */ + protected void SetNextState(WorkflowState state) { + this._next = state; + } + + /** + * Perform main logic for this state + * @param workflow + */ + public abstract void Update(Workflow workflow); +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java new file mode 100644 index 00000000..7c249ef2 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java @@ -0,0 +1,15 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class BKUSelectionState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/DataSourceSelectionState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/DataSourceSelectionState.java new file mode 100644 index 00000000..a6c92ba3 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/DataSourceSelectionState.java @@ -0,0 +1,15 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class DataSourceSelectionState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java new file mode 100644 index 00000000..d984ea7f --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java @@ -0,0 +1,15 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class OutputState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java new file mode 100644 index 00000000..54ed8b31 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java @@ -0,0 +1,15 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class PositioningState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PrepareConfigurationState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PrepareConfigurationState.java new file mode 100644 index 00000000..65abeea1 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PrepareConfigurationState.java @@ -0,0 +1,14 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class PrepareConfigurationState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PrepareSigningState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PrepareSigningState.java new file mode 100644 index 00000000..5dc96ade --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PrepareSigningState.java @@ -0,0 +1,15 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class PrepareSigningState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java new file mode 100644 index 00000000..4753de48 --- /dev/null +++ b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/states/SigningState.java @@ -0,0 +1,15 @@ +package at.asit.pdfover.gui.workflow.states; + +import at.asit.pdfover.gui.workflow.Workflow; +import at.asit.pdfover.gui.workflow.WorkflowState; + + +public class SigningState extends WorkflowState { + + @Override + public void Update(Workflow workflow) { + // TODO Auto-generated method stub + + } + +} diff --git a/pdf-over/pdf-gui/src/model/PDFOverGUI.ucd b/pdf-over/pdf-gui/src/model/PDFOverGUI.ucd new file mode 100644 index 00000000..4895ff45 --- /dev/null +++ b/pdf-over/pdf-gui/src/model/PDFOverGUI.ucd @@ -0,0 +1,123 @@ +<?xml version="1.0" encoding="UTF-8"?> +<editmodel:ClassDiagramEditModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:editmodel="editmodel.xmi" xmlns:options="options.xmi" name="PDFOverGUI" size="1439,478" id="at.asit.pdfover.gui.workflow.states" metadata="uml2-1.0" initialized="true" tag="1000" key="32303037303533312D31303030207064662D6775692F616669747A656B"> + <children xsi:type="editmodel:ClassEditModel" targetConnections="//@children.1/@sourceConnections.0" name="Workflow" location="389,72" size="180,171" id="at.asit.pdfover.gui.workflow/Workflow" runTimeClassModel="SetCmdArgs([Ljava.lang.String;),GetPersistentState(),Update(),Start(),GetCmdArgs(),GetComposite()"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="139,108"> + <children xsi:type="editmodel:MethodEditModel" name="GetCmdArgs" id="at.asit.pdfover.gui.workflow/Workflow#GetCmdArgs()"/> + <children xsi:type="editmodel:MethodEditModel" name="CreateMainWindow" id="at.asit.pdfover.gui.workflow/Workflow#CreateMainWindow()"/> + <children xsi:type="editmodel:MethodEditModel" name="GetPersistentState" id="at.asit.pdfover.gui.workflow/Workflow#GetPersistentState()"/> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow/Workflow#Update()"/> + <children xsi:type="editmodel:MethodEditModel" name="Start" id="at.asit.pdfover.gui.workflow/Workflow#Start()"/> + <children xsi:type="editmodel:MethodEditModel" name="GetComposite" id="at.asit.pdfover.gui.workflow/Workflow#GetComposite()"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" targetConnections="//@children.2/@sourceConnections.0 //@children.3/@sourceConnections.0 //@children.4/@sourceConnections.0 //@children.5/@sourceConnections.0 //@children.6/@sourceConnections.0 //@children.7/@sourceConnections.0 //@children.8/@sourceConnections.0" name="WorkflowState" location="690,90" size="180,99" id="at.asit.pdfover.gui.workflow/WorkflowState" runTimeClassModel="NextState(),Update(Lat.asit.pdfover.gui.workflow.Workflow;)"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="86,36"> + <children xsi:type="editmodel:MethodEditModel" name="NextState" id="at.asit.pdfover.gui.workflow/WorkflowState#NextState()"/> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow/WorkflowState#Update(Lat.asit.pdfover.gui.workflow.Workflow;)"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:AssociationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState@state+at.asit.pdfover.gui.workflow/Workflow@workflow1" source="//@children.1" target="//@children.0" targetEnd="//@children.1/@sourceConnections.0/@children.1" label="//@children.1/@sourceConnections.0/@children.2" sourceEnd="//@children.1/@sourceConnections.0/@children.0" connectionRouterKind="Manhattan"> + <children xsi:type="editmodel:AssociationEndEditModel" name="state" location="0,49" id="at.asit.pdfover.gui.workflow/WorkflowState@state+at.asit.pdfover.gui.workflow/Workflow@workflow1|at.asit.pdfover.gui.workflow/WorkflowState#state" attachSource="true" multiplicityLabel="//@children.1/@sourceConnections.0/@children.0/@children.1" roleLabel="//@children.1/@sourceConnections.0/@children.0/@children.0" aggregationKind="Aggregration" navigable="true"> + <children xsi:type="editmodel:LabelEditModel" name=" - state" location="642,119" size="41,13" anchorKind="FirstPart"/> + <children xsi:type="editmodel:LabelEditModel" name="1" location="676,146" size="7,13" anchorKind="FirstPart"/> + </children> + <children xsi:type="editmodel:AssociationEndEditModel" name="workflow1" location="180,67" id="at.asit.pdfover.gui.workflow/WorkflowState@state+at.asit.pdfover.gui.workflow/Workflow@workflow1|at.asit.pdfover.gui.workflow/Workflow#workflow1"/> + <children xsi:type="editmodel:WireLabelEditModel" size="0,13" anchorKind="MiddlePart"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="PrepareConfigurationState" location="389,225" size="239,68" id="at.asit.pdfover.gui.workflow.states/PrepareConfigurationState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/PrepareConfigurationState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/PrepareConfigurationState" source="//@children.2" target="//@children.1" targetEnd="//@children.2/@sourceConnections.0/@children.1" sourceEnd="//@children.2/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="196,0" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="0,89"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="DataSourceSelectionState" location="765,225" size="233,68" id="at.asit.pdfover.gui.workflow.states/DataSourceSelectionState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/DataSourceSelectionState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/DataSourceSelectionState" source="//@children.3" target="//@children.1" targetEnd="//@children.3/@sourceConnections.0/@children.1" sourceEnd="//@children.3/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="52,0" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="127,99"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="PositioningState" location="1035,225" size="163,68" id="at.asit.pdfover.gui.workflow.states/PositioningState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/PositioningState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/PositioningState" source="//@children.4" target="//@children.1" targetEnd="//@children.4/@sourceConnections.0/@children.1" sourceEnd="//@children.4/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="0,5" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="180,81"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="PrepareSigningState" location="426,300" size="195,68" id="at.asit.pdfover.gui.workflow.states/PrepareSigningState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/PrepareSigningState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/PrepareSigningState" source="//@children.5" target="//@children.1" targetEnd="//@children.5/@sourceConnections.0/@children.1" sourceEnd="//@children.5/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="142,0" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="24,99"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="BKUSelectionState" location="645,300" size="178,68" id="at.asit.pdfover.gui.workflow.states/BKUSelectionState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/BKUSelectionState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/BKUSelectionState" source="//@children.6" target="//@children.1" targetEnd="//@children.6/@sourceConnections.0/@children.1" sourceEnd="//@children.6/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="111,0" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="66,99"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="SigningState" location="855,300" size="136,68" id="at.asit.pdfover.gui.workflow.states/SigningState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/SigningState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/SigningState" source="//@children.7" target="//@children.1" targetEnd="//@children.7/@sourceConnections.0/@children.1" sourceEnd="//@children.7/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="7,0" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="172,99"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <children xsi:type="editmodel:ClassEditModel" name="OutputState" location="489,390" size="132,68" id="at.asit.pdfover.gui.workflow.states/OutputState" runTimeClassModel="Update"> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <children xsi:type="editmodel:CompartmentEditModel" size="71,18"> + <children xsi:type="editmodel:MethodEditModel" name="Update" id="at.asit.pdfover.gui.workflow.states/OutputState#Update"/> + </children> + <children xsi:type="editmodel:CompartmentEditModel" size="0,0"/> + <sourceConnections xsi:type="editmodel:GeneralizationEditModel" autoLocated="true" id="at.asit.pdfover.gui.workflow/WorkflowState<-at.asit.pdfover.gui.workflow.states/OutputState" source="//@children.8" target="//@children.1" targetEnd="//@children.8/@sourceConnections.0/@children.1" sourceEnd="//@children.8/@sourceConnections.0/@children.0" connectionRouterKind="Manual"> + <children xsi:type="editmodel:AssociationEndEditModel" location="93,0" attachSource="true"/> + <children xsi:type="editmodel:AssociationEndEditModel" location="51,99"/> + </sourceConnections> + <classifierPreferences xsi:type="editmodel:UMLClassDiagramClassifierPreference" showStereotype="true" attributeSorter="Natural" methodSorter="Natural" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> + </children> + <diagramOptions xsi:type="options:ClassDiagramOptions" properties="wireOptions=1;Product=eUML2" autoName="false"/> + <boardSetting snapToGeometry="true" gridEnabled="true" gridSpacing="15,15" gridOrigin="0,0" rulerUnit="pixel" gridVisibility="false"> + <leftRuler/> + <topRuler/> + </boardSetting> + <classDiagramPreferences xsi:type="editmodel:UMLClassDiagramPreference" showPopupBars="true" showConnectionHandles="true" attributeSorter="Natural" methodSorter="Natural" showClassStereotype="true" showPackageStereotype="true" showDependencyStereotype="true" showInterfaceStereotype="true" innerClassSorter="Natural" showPublicAttributes="true" showPackageAttributes="true" showStaticAttributes="true" showPublicMethods="true" showPackageMethods="true" showStaticMethods="true" showPublicInnerClasses="true" showPackageInnerClasses="true" showStaticInnerClasses="true" packageIndication="3" showAttributeProperty="true"/> +</editmodel:ClassDiagramEditModel> |