~aleteoryx/muditaos

ref: 44d3306f280cc7d6daa718d2a9f6323e48f54616 muditaos/module-services/service-evtmgr/doc/battery_status_notification.svg -rw-r--r-- 12.5 KiB
44d3306f — rrandomsky [CP-1059] Fix for erase only sensitive data from logs 2 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
<?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="481px" preserveAspectRatio="none" style="width:1340px;height:481px;background:#F0F0F0;" version="1.1" viewBox="0 0 1340 481" width="1340px" zoomAndPan="magnify"><defs><filter height="300%" id="f1b9c2dncdp5dx" 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(#f1b9c2dncdp5dx)" height="103.5313" style="stroke: #000000; stroke-width: 2.0;" width="468.5" x="414.5" y="188.125"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="71" x2="71" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="266" x2="266" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="484.5" x2="484.5" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="703.5" x2="703.5" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="878" x2="878" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1004" x2="1004" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1165.5" x2="1165.5" y1="54.5938" y2="425.1875"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="1284.5" x2="1284.5" y1="54.5938" y2="425.1875"/><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="122" x="8" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="108" x="15" y="39.292">Battery Charger</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="122" x="8" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="108" x="15" y="444.1826">Battery Charger</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="106" x="211" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="92" x="218" y="39.292">Worker Event</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="106" x="211" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="92" x="218" y="444.1826">Worker Event</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="117" x="424.5" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="103" x="431.5" y="39.292">Event Manager</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="117" x="424.5" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="103" x="431.5" y="444.1826">Event Manager</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="129" x="637.5" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="115" x="644.5" y="39.292">System Manager</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="129" x="637.5" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="115" x="644.5" y="444.1826">System Manager</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="144" x="804" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="130" x="811" y="39.292">Current application</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="144" x="804" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="130" x="811" y="444.1826">Current application</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="64" x="970" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="50" x="977" y="39.292">TopBar</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="64" x="970" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="50" x="977" y="444.1826">TopBar</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="115" x="1106.5" y="19.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="101" x="1113.5" y="39.292">Battery Widget</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="115" x="1106.5" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="101" x="1113.5" y="444.1826">Battery Widget</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="46.5938" style="stroke: #A80036; stroke-width: 1.5;" width="94" x="1235.5" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="80" x="1242.5" y="22.9951">Event Store</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="49" x="1258" y="39.292">Battery</text><rect fill="#FEFECE" filter="url(#f1b9c2dncdp5dx)" height="46.5938" style="stroke: #A80036; stroke-width: 1.5;" width="94" x="1235.5" y="424.1875"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="80" x="1242.5" y="444.1826">Event Store</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="49" x="1258" y="460.4795">Battery</text><polygon fill="#A80036" points="254,81.7266,264,85.7266,254,89.7266,258,85.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="71" x2="260" y1="85.7266" y2="85.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="55" x="78" y="80.6606">Interrupt</text><polygon fill="#A80036" points="82,110.8594,72,114.8594,82,118.8594,78,114.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="76" x2="265" y1="114.8594" y2="114.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="171" x="88" y="109.7935">Store status to EventStore</text><polygon fill="#A80036" points="1272.5,139.9922,1282.5,143.9922,1272.5,147.9922,1276.5,143.9922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="71" x2="1278.5" y1="143.9922" y2="143.9922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="53" x="78" y="138.9263">modify()</text><polygon fill="#A80036" points="473,169.125,483,173.125,473,177.125,477,173.125" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="266" x2="479" y1="173.125" y2="173.125"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="195" x="273" y="168.0591">BatteryStatusChangeMessage</text><path d="M414.5,188.125 L562.5,188.125 L562.5,195.125 L552.5,205.125 L414.5,205.125 L414.5,188.125 " fill="#EEEEEE" style="stroke: #000000; stroke-width: 1.0;"/><rect fill="none" height="103.5313" style="stroke: #000000; stroke-width: 2.0;" width="468.5" x="414.5" y="188.125"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="103" x="429.5" y="201.1919">If Discharging</text><polygon fill="#A80036" points="692,222.3906,702,226.3906,692,230.3906,696,226.3906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="485" x2="698" y1="226.3906" y2="226.3906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="195" x="492" y="221.3247">BatteryStatusChangeMessage</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="704" x2="746" y1="270.6563" y2="270.6563"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="746" x2="746" y1="270.6563" y2="283.6563"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="705" x2="746" y1="283.6563" y2="283.6563"/><polygon fill="#A80036" points="715,279.6563,705,283.6563,715,287.6563,711,283.6563" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="160" x="711" y="250.4575">If State::ShutdownReady:</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="154" x="715" y="265.5903">state = State:Shutdown</text><polygon fill="#A80036" points="866,315.7891,876,319.7891,866,323.7891,870,319.7891" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="485" x2="872" y1="319.7891" y2="319.7891"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="195" x="492" y="314.7231">BatteryStatusChangeMessage</text><polygon fill="#A80036" points="992,344.9219,1002,348.9219,992,352.9219,996,348.9219" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="878" x2="998" y1="348.9219" y2="348.9219"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="102" x="885" y="343.856">updateBattery()</text><polygon fill="#A80036" points="1015,374.0547,1005,378.0547,1015,382.0547,1011,378.0547" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="1272.5,374.0547,1282.5,378.0547,1272.5,382.0547,1276.5,378.0547" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="1009" x2="1278.5" y1="378.0547" y2="378.0547"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="31" x="1021" y="372.9888">get()</text><polygon fill="#A80036" points="1154,403.1875,1164,407.1875,1154,411.1875,1158,407.1875" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="1004" x2="1160" y1="407.1875" y2="407.1875"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="138" x="1011" y="402.1216">show(batteryContext)</text><!--MD5=[ca8e942ddae7e078a8959b4a48897e37]
@startuml
skinparam BackgroundColor F0F0F0
participant "Battery Charger" as bc
participant "Worker Event" as we
participant "Event Manager" as evm
participant "System Manager" as sm
participant "Current application" as ca
participant "TopBar" as tb
participant "Battery Widget" as bw
participant "Event Store\nBattery" as es

bc -> we : Interrupt
we -> bc : Store status to EventStore
bc -> es : modify()
we -> evm : BatteryStatusChangeMessage
group If Discharging
    evm -> sm : BatteryStatusChangeMessage
    sm -> sm : If State::ShutdownReady:\n state = State:Shutdown
end
evm -> ca : BatteryStatusChangeMessage
ca -> tb : updateBattery()
tb <-> es : get() 
tb -> bw : show(batteryContext)

@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>