forked from nus-cs2103-AY1920S1/addressbook-level3
-
Notifications
You must be signed in to change notification settings - Fork 4
/
UndoSequenceDiagram.puml
53 lines (40 loc) · 1.25 KB
/
UndoSequenceDiagram.puml
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
@startuml
!include style.puml
box Logic LOGIC_COLOR_T1
participant ":LogicManager" as LogicManager LOGIC_COLOR
participant ":AddressBookParser" as AddressBookParser LOGIC_COLOR
participant "u:UndoCommand" as UndoCommand LOGIC_COLOR
end box
box Model MODEL_COLOR_T1
participant ":Model" as Model MODEL_COLOR
participant ":VersionedAddressBook" as VersionedAddressBook MODEL_COLOR
end box
[-> LogicManager : execute(undo)
activate LogicManager
LogicManager -> AddressBookParser : parseCommand(undo)
activate AddressBookParser
create UndoCommand
AddressBookParser -> UndoCommand
activate UndoCommand
UndoCommand --> AddressBookParser
deactivate UndoCommand
AddressBookParser --> LogicManager : u
deactivate AddressBookParser
LogicManager -> UndoCommand : execute()
activate UndoCommand
UndoCommand -> Model : undoAddressBook()
activate Model
Model -> VersionedAddressBook : undo()
activate VersionedAddressBook
VersionedAddressBook -> VersionedAddressBook :resetData(ReadOnlyAddressBook)
VersionedAddressBook --> Model :
deactivate VersionedAddressBook
Model --> UndoCommand
deactivate Model
UndoCommand --> LogicManager : result
deactivate UndoCommand
UndoCommand -[hidden]-> LogicManager : result
destroy UndoCommand
[<--LogicManager
deactivate LogicManager
@enduml