-
Notifications
You must be signed in to change notification settings - Fork 0
/
sequence.uml
99 lines (95 loc) · 16.6 KB
/
sequence.uml
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
┌───┐ ┌────────┐ ┌───────┐ ┌───┐ ┌──────┐ ┌────┐ ┌────────┐
│org│ │oz_inbox│ │Dropbox│ │tmp│ │orgzly│ │tmp2│ │or_inbox│
└─┬─┘ └───┬────┘ └───┬───┘ └─┬─┘ └──┬───┘ └─┬──┘ └───┬────┘
│ │ │ │ │ │ │
│ │ │ │ ╔════╗ │ │ │
══════════════════════╪═════════════════════════════════╪═══════════════════╪════════════════════════════╪═══╣ up ╠═════════════════════════════════╪════════════════╪═════════════════╪════════════════════════════════════════
│ │ │ │ ╚════╝ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
╔═══════╤═══╪═════════════════════════════════╪═══════════════════╪═════════╗ │ │ │ │
║ PUSH │ │ │ │ ║ │ │ │ │
╟───────┘ │1 org nodes added to orgzly inbox│ ╔═══════════════╗│ ║ │ │ │ │
║ │─────────────────────────────────> ║prevent dupes ░║│ ║ │ │ │ │
╚═══════════╪═════════════════════════════════╪══╚═══════════════╝╪═════════╝ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ ╔════╪═╤═════════════════╪════════════════════════════╪══════════════════════════════════════════╪════════════════╪═════════════════╪═════════╗
│ ║ PUT │ │ │ │ │ │ ║
│ ╟──────┘ │ 2 files downloaded to tmp ┌┴┐ ╔═════════════════╗ │ │ │ ║
│ ║ │ │ ─────────────────────────>│ │ ║direct download ░║ │ │ │ ║
│ ║ │ │ │ │ ╚═════════════════╝ │ │ │ ║
│ ║ │ │ ╔═══════════════╗ \ / 3 orgzly files compared to dropbox files│ ┌┴┐ │ ║
│ ║ │ │ ║prevent dupes ░║ │X│ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ ║
│ ║ │ │ ╚═══════════════╝ /┬\ │ │ │ │ ║
│ ║ │ │ │ 4 result created in tmp2 │ \ / ╔════════════╧╗ ║
│ ║ │ │ │ ─────────────────────────────────────────────────────────>│X│ ║only unique ░║ ║
│ ║ │ │ │ │ /┬\ ╚════════════╤╝ ║
│ ║ │ ╔════════════════╗│ │ 5 tmp2 uploaded to dropbox │ │ │ ║
│ ║ │ ║overwrite mode ░║│ <─────────────────────────────────────────────────────────────────────────────────────── │ ║
│ ╚════╪═╚════════════════╝╪════════════════════════════╪══════════════════════════════════════════╪════════════════╪═════════════════╪═════════╝
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ ╔══════╗ │ │ │
══════════════════════╪═════════════════════════════════╪═══════════════════╪════════════════════════════╪══╣ down ╠════════════════════════════════╪════════════════╪═════════════════╪════════════════════════════════════════
│ │ │ │ ╚══════╝ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ ╔══════╤══════╪════════════════════════════╪══════════════════════════════════════════╪════════════════╪═════╗ │
│ │ ║ GET │ │ │ │ │ ║ │
│ │ ╟──────┘ │6 dropbox downloaded to tmp┌┴┐ ╔═════════════════╗ │ │ ║ │
│ │ ║ │ ─────────────────────────>│ │ ║direct download ░║ │ │ ║ │
│ │ ║ │ │ │ ╚═════════════════╝ │ │ ║ │
│ │ ║ │ ╔═══════════════╗ \ / 7 orgzly files compared to tmp │ │ ║ │
│ │ ║ │ ║prevent dupes ░║ │X│ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ ║ │
│ │ ║ │ ╚═══════════════╝ /┬\ │ │ ║ │
│ │ ║ │ │ 8 result added to orgzly │ ╔════════╗ │ ║ │
│ │ ║ │ │ ─────────────────────────────────────────> ║unique ░║ │ ║ │
│ │ ╚═════════════╪════════════════════════════╪══════════════════════════════════════════╪══╚════════╝════╪═════╝ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ ╔═══════╤════╪════════════════╪═════════════════╪═════════════════════════════╗
│ │ │ │ ║ PULL │ │ │ │ ║
│ │ │ │ ╟───────┘ │ 9 orgzly files pushed to org │ ╔═══════════════╗ ║
│ │ │ │ ║ │ ─────────────────────────────────> ║prevent dupes ░║ ║
│ │ │ │ ╚════════════╪════════════════╪═════════════════╪══╚═══════════════╝══════════╝
┌─┴─┐ ┌───┴────┐ ┌───┴───┐ ┌─┴─┐ ┌──┴───┐ ┌─┴──┐ ┌───┴────┐
│org│ │oz_inbox│ │Dropbox│ │tmp│ │orgzly│ │tmp2│ │or_inbox│
└───┘ └────────┘ └───────┘ └───┘ └──────┘ └────┘ └────────┘
@startuml
autonumber
== up ==
group push
org -> oz_inbox : org nodes added to orgzly inbox
note right: prevent dupes
end
group put
Dropbox o-> tmp : files downloaded to tmp
note right: direct download
activate tmp
orgzly o<-->o tmp : orgzly files compared to dropbox files
note left: prevent dupes
activate tmp2
tmp -> tmp2 : result created in tmp2
note right: only unique
destroy tmp
tmp2 ->x Dropbox : tmp2 uploaded to dropbox
note left: overwrite mode
destroy tmp2
end
== down ==
group get
tmp <- Dropbox : dropbox downloaded to tmp
note right: direct download
activate tmp
orgzly o<-->o tmp : orgzly files compared to tmp
note left: prevent dupes
tmp -> orgzly : result added to orgzly
note right: unique
destroy tmp
end
group pull
or_inbox x<- orgzly : orgzly files pushed to org
note right: prevent dupes
end
@enduml