~aleteoryx/muditaos

muditaos/module-apps/application-desktop/doc/appdesktop_interfaces.pu -rw-r--r-- 1.5 KiB
a405cad6Aleteoryx trim readme 6 days 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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
@startuml
skinparam BackgroundColor F0F0F0

enum GSM::SIM
{
    SIM1
    SIM2
    NONE
}

enum ActionId
{
    RequestPin1
    RequestPuk1
    SimUnlocked
    UnhandledCMEError
    ChangePin1
    SimBlocked
}

abstract class ActionParams
{

}

abstract class Message
{

}
class PinData
{
    std::vector<unsigned int> pinValue
}
class ReplacePinData
{
    std::vector<unsigned int> oldPinValue
    std::vector<unsigned int> newPinValue
}
class PukData
{
    std::vector<unsigned int> pukValue
    std::vector<unsigned int> newPinValue
}
class Abort
{

}

class ActionMessage
{
    ActionId action
    ActionParams
}
class RequestPinParams
{
    GSM::SIM sim
    unsigned int attempts
}
class RequestPukParams
{
    GSM::SIM sim
    unsigned int attempts
}
class UnlockedParams
{
    GSM::SIM sim
}
class CMEErrorParams
{
    unsigned int cme_code
}
class ChangePinParams
{
    GSM::SIM sim
    unsigned int attempts
}
class SimBlockedParams
{
    GSM::SIM sim
}

Message <|-- PinData
Message <|-- ReplacePinData
Message <|-- PukData
Message <|-- Abort
Message <|-- ActionMessage
ActionParams <|-- RequestPinParams
ActionParams <|-- RequestPukParams
ActionParams <|-- UnlockedParams
ActionParams <|-- CMEErrorParams
ActionParams <|-- ChangePinParams
ActionParams <|-- SimBlockedParams
interface SrvCellularMessageHandler
{
    handle(Message)
}
interface APMActions
{
    setAction(ActionMessage)
}

SrvCellularMessageHandler *-- Message : use
APMActions *-- ActionMessage : use
ActionMessage *-- ActionParams : use

@enduml