JOBot/docs/UML/JOBotStateMachine.drawio

148 lines
13 KiB
Plaintext

<mxfile host="Electron" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/27.0.9 Chrome/134.0.6998.205 Electron/35.4.0 Safari/537.36" version="27.0.9">
<diagram name="/start" id="RBNtdg3dX3ngeTm1AG6C">
<mxGraphModel dx="1248" dy="862" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="RWtiJw2BV4MPElkXuSfI-4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-3" target="RWtiJw2BV4MPElkXuSfI-14">
<mxGeometry relative="1" as="geometry">
<mxPoint x="390" y="260" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-3" value="/start" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330" y="140" width="120" height="80" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-13" value="PrepareUserValidator" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=default;fillColor=none;dashed=1;dashPattern=8 8;labelPosition=left;verticalLabelPosition=top;align=right;verticalAlign=bottom;" vertex="1" parent="1">
<mxGeometry x="120" y="250" width="640" height="1400" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-16" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-14" target="RWtiJw2BV4MPElkXuSfI-15">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-14" value="User = gRPC UserService -&amp;gt; GetUser" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330" y="280" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-18" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-15" target="RWtiJw2BV4MPElkXuSfI-17">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-15" target="RWtiJw2BV4MPElkXuSfI-21">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="300" y="400" />
<mxPoint x="300" y="530" />
<mxPoint x="390" y="530" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-15" value="User.Exists?" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="335" y="360" width="110" height="80" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-24" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-17" target="RWtiJw2BV4MPElkXuSfI-21">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="474" y="530" />
<mxPoint x="390" y="530" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-17" value="gRPC UserService -&amp;gt;&lt;div&gt;Register&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="414" y="440" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-29" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-21" target="RWtiJw2BV4MPElkXuSfI-28">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-21" value="User.EULA?" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="331.25" y="550" width="117.5" height="80" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-25" value="True" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="290" y="370" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-27" value="False" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="430" y="370" width="60" height="30" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-33" value="&amp;lt;&amp;lt;inline button Accept&amp;gt;&amp;gt;" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;dashed=1;labelPosition=center;verticalLabelPosition=top;align=center;verticalAlign=bottom;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-28" target="RWtiJw2BV4MPElkXuSfI-31">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-28" value="SendEULA()" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330" y="650" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-35" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-31" target="RWtiJw2BV4MPElkXuSfI-34">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-31" value="&lt;div&gt;&amp;lt;&amp;lt;signal&amp;gt;&amp;gt;&lt;/div&gt;&lt;div&gt;gRPC UserService -&amp;gt; AcceptEULA&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330.25" y="760" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-47" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-34" target="RWtiJw2BV4MPElkXuSfI-37">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-55" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-34" target="RWtiJw2BV4MPElkXuSfI-46">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="263" y="920" />
<mxPoint x="263" y="1160" />
<mxPoint x="389" y="1160" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-34" value="User.Logged()?" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="282.75" y="880" width="215" height="80" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-44" value="&amp;lt;&amp;lt;HH.ru hook&amp;gt;&amp;gt;" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;dashed=1;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-37" target="RWtiJw2BV4MPElkXuSfI-41">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-37" value="SendAskForAuth()" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="465" y="1000" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-53" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-41" target="RWtiJw2BV4MPElkXuSfI-46">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-41" value="&amp;lt;&amp;lt;signal&amp;gt;&amp;gt;&lt;div&gt;SendNotifyAuthSuccess()&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="445" y="1080" width="160" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-56" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-46" target="RWtiJw2BV4MPElkXuSfI-54">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-67" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-46" target="RWtiJw2BV4MPElkXuSfI-66">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="262" y="1220" />
<mxPoint x="262" y="1550" />
<mxPoint x="526" y="1550" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-46" value="User.ResumeUrl.NullOrEmpty()?" style="rhombus;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="281.75" y="1180" width="215" height="80" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-58" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-54" target="RWtiJw2BV4MPElkXuSfI-57">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-54" value="gRPC UserService -&amp;gt; GetCVList" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="465" y="1290" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-61" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;dashed=1;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-57" target="RWtiJw2BV4MPElkXuSfI-60">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-62" value="&amp;lt;&amp;lt;inline button of CV pressed&amp;gt;&amp;gt;" style="edgeLabel;html=1;align=left;verticalAlign=middle;resizable=0;points=[];labelPosition=right;verticalLabelPosition=middle;" vertex="1" connectable="0" parent="RWtiJw2BV4MPElkXuSfI-61">
<mxGeometry x="0.2305" y="2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-57" value="SendAskForCVSelection()" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="448.75" y="1380" width="155" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-65" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="RWtiJw2BV4MPElkXuSfI-60">
<mxGeometry relative="1" as="geometry">
<mxPoint x="526.25" y="1560" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-60" value="&lt;div&gt;&amp;lt;&amp;lt;signal&amp;gt;&amp;gt;&lt;/div&gt;ResumeSelected()" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="466.25" y="1480" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="RWtiJw2BV4MPElkXuSfI-66" value="/menu" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="466.25" y="1560" width="120" height="80" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>