~aleteoryx/muditaos

ref: 1a66e73b78c6535829ee6ab180ff5e5c5892e343 muditaos/module-sys/SystemManager/doc/system_close_procedure_user.svg -rw-r--r-- 14.7 KiB
1a66e73b — Wojtek Rzepecki [BH-1167] USB async receive 4 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="673px" preserveAspectRatio="none" style="width:1152px;height:673px;background:#F0F0F0;" version="1.1" viewBox="0 0 1152 673" width="1152px" zoomAndPan="magnify"><defs><filter height="300%" id="fdnpftd7rchiv" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><rect fill="#F0F0F0" filter="url(#fdnpftd7rchiv)" height="59.2656" style="stroke: #000000; stroke-width: 2.0;" width="182.5" x="362" y="378.4922"/><rect fill="#F0F0F0" filter="url(#fdnpftd7rchiv)" height="59.2656" style="stroke: #000000; stroke-width: 2.0;" width="160.5" x="362" y="510.0234"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="27" x2="27" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="136" x2="136" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="259" x2="259" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="438" x2="438" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="629.5" x2="629.5" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="785" x2="785" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="971.5" x2="971.5" y1="86.2969" y2="586.2891"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1094.5" x2="1094.5" y1="86.2969" y2="586.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="32" x="8" y="82.9951">User</text><ellipse cx="27" cy="13" fill="#FEFECE" filter="url(#fdnpftd7rchiv)" rx="8" ry="8" style="stroke: #A80036; stroke-width: 2.0;"/><path d="M27,21 L27,48 M14,29 L40,29 M27,48 L14,63 M27,48 L40,63 " fill="none" filter="url(#fdnpftd7rchiv)" style="stroke: #A80036; stroke-width: 2.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="32" x="8" y="598.2842">User</text><ellipse cx="27" cy="611.5859" fill="#FEFECE" filter="url(#fdnpftd7rchiv)" rx="8" ry="8" style="stroke: #A80036; stroke-width: 2.0;"/><path d="M27,619.5859 L27,646.5859 M14,627.5859 L40,627.5859 M27,646.5859 L14,661.5859 M27,646.5859 L40,661.5859 " fill="none" filter="url(#fdnpftd7rchiv)" style="stroke: #A80036; stroke-width: 2.0;"/><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="130" x="69" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="116" x="76" y="70.9951">PowerOffWindow</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="130" x="69" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="116" x="76" y="605.2842">PowerOffWindow</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="89" x="213" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="75" x="220" y="70.9951">Application</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="89" x="213" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="75" x="220" y="605.2842">Application</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="129" x="372" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="115" x="379" y="70.9951">System Manager</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="129" x="372" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="115" x="379" y="605.2842">System Manager</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="90" x="582.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="76" x="589.5" y="70.9951">All services</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="90" x="582.5" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="76" x="589.5" y="605.2842">All services</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="153" x="707" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="139" x="714" y="70.9951">Application Manager</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="153" x="707" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="139" x="714" y="605.2842">Application Manager</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="92" x="923.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="78" x="930.5" y="70.9951">Service GUI</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="92" x="923.5" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="78" x="930.5" y="605.2842">Service GUI</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="98" x="1043.5" y="51"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="84" x="1050.5" y="70.9951">service EINK</text><rect fill="#FEFECE" filter="url(#fdnpftd7rchiv)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="98" x="1043.5" y="585.2891"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="84" x="1050.5" y="605.2842">service EINK</text><polygon fill="#A80036" points="124,113.4297,134,117.4297,124,121.4297,128,117.4297" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="27" x2="130" y1="117.4297" y2="117.4297"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="85" x="34" y="112.3638">confirm close</text><polygon fill="#A80036" points="247.5,142.5625,257.5,146.5625,247.5,150.5625,251.5,146.5625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="136" x2="253.5" y1="146.5625" y2="146.5625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="86" x="143" y="141.4966">GUI off switch</text><polygon fill="#A80036" points="426.5,171.6953,436.5,175.6953,426.5,179.6953,430.5,175.6953" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="259.5" x2="432.5" y1="175.6953" y2="175.6953"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="155" x="266.5" y="170.6294">UserPowerDownRequest</text><polygon fill="#A80036" points="617.5,200.8281,627.5,204.8281,617.5,208.8281,621.5,204.8281" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="438.5" x2="623.5" y1="204.8281" y2="204.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="104" x="445.5" y="199.7622">preCloseRoutine</text><polygon fill="#A80036" points="773.5,229.9609,783.5,233.9609,773.5,237.9609,777.5,233.9609" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="629.5" x2="779.5" y1="233.9609" y2="233.9609"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="132" x="636.5" y="228.895">processCloseReason</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="785.5" x2="827.5" y1="263.0938" y2="263.0938"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="827.5" x2="827.5" y1="263.0938" y2="276.0938"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="786.5" x2="827.5" y1="276.0938" y2="276.0938"/><polygon fill="#A80036" points="796.5,272.0938,786.5,276.0938,796.5,280.0938,792.5,276.0938" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="172" x="792.5" y="258.0278">switchWindowAtClose(logo)</text><polygon fill="#A80036" points="982.5,301.2266,972.5,305.2266,982.5,309.2266,978.5,305.2266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="976.5" x2="1093.5" y1="305.2266" y2="305.2266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="99" x="988.5" y="300.1606">last sreen show</text><polygon fill="#A80036" points="640.5,330.3594,630.5,334.3594,640.5,338.3594,636.5,334.3594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="634.5" x2="970.5" y1="334.3594" y2="334.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="90" x="646.5" y="329.2935">ready to close</text><polygon fill="#A80036" points="449.5,359.4922,439.5,363.4922,449.5,367.4922,445.5,363.4922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="443.5" x2="628.5" y1="363.4922" y2="363.4922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="86" x="455.5" y="358.4263">readyToClose</text><path d="M362,378.4922 L426,378.4922 L426,385.4922 L416,395.4922 L362,395.4922 L362,378.4922 " fill="#EEEEEE" style="stroke: #000000; stroke-width: 1.0;"/><rect fill="none" height="59.2656" style="stroke: #000000; stroke-width: 2.0;" width="182.5" x="362" y="378.4922"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="19" x="377" y="391.5591">alt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="59" x="441" y="390.7026">[timeout]</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="438.5" x2="480.5" y1="416.7578" y2="416.7578"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="480.5" x2="480.5" y1="416.7578" y2="429.7578"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="439.5" x2="480.5" y1="429.7578" y2="429.7578"/><polygon fill="#A80036" points="449.5,425.7578,439.5,429.7578,449.5,433.7578,445.5,429.7578" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="87" x="445.5" y="411.6919">closeServices</text><polygon fill="#A80036" points="617.5,461.8906,627.5,465.8906,617.5,469.8906,621.5,465.8906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="438.5" x2="623.5" y1="465.8906" y2="465.8906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="167" x="445.5" y="460.8247">SystemMessageType::Exit</text><polygon fill="#A80036" points="449.5,491.0234,439.5,495.0234,449.5,499.0234,445.5,495.0234" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="443.5" x2="628.5" y1="495.0234" y2="495.0234"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="79" x="455.5" y="489.9575">MsgHandled</text><path d="M362,510.0234 L426,510.0234 L426,517.0234 L416,527.0234 L362,527.0234 L362,510.0234 " fill="#EEEEEE" style="stroke: #000000; stroke-width: 1.0;"/><rect fill="none" height="59.2656" style="stroke: #000000; stroke-width: 2.0;" width="160.5" x="362" y="510.0234"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="19" x="377" y="523.0903">alt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="59" x="441" y="522.2339">[timeout]</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="438.5" x2="480.5" y1="548.2891" y2="548.2891"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="480.5" x2="480.5" y1="548.2891" y2="561.2891"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="439.5" x2="480.5" y1="561.2891" y2="561.2891"/><polygon fill="#A80036" points="449.5,557.2891,439.5,561.2891,449.5,565.2891,445.5,561.2891" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="65" x="445.5" y="543.2231">kill service</text><!--MD5=[c7d7d97be0d6be1e0cc194251024e491]
@startuml
skinparam BackgroundColor F0F0F0

actor User
participant "PowerOffWindow" as poff
participant "Application" as app
participant "System Manager" as sysmgr
participant "All services" as srv
participant "Application Manager" as appmgr
participant "Service GUI" as gui
participant "service EINK" as eink

User -> poff : confirm close
poff -> app : GUI off switch
app -> sysmgr : UserPowerDownRequest
sysmgr -> srv : preCloseRoutine

srv -> appmgr : processCloseReason
appmgr -> appmgr : switchWindowAtClose(logo)
eink -> gui : last sreen show
gui -> srv : ready to close

srv -> sysmgr : readyToClose
alt timeout
sysmgr -> sysmgr : closeServices
end
sysmgr -> srv : SystemMessageType::Exit
srv -> sysmgr : MsgHandled
alt timeout
sysmgr -> sysmgr : kill service
end

@enduml

PlantUML version 1.2020.02(Sun Mar 01 05:22:07 EST 2020)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Java Version: 11.0.12+7-post-Debian-2
Operating System: Linux
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>