You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: Assignment.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ We call clients of the Chitty-Chat service Participants.
35
35
-[ ] Describe how you have implemented the calculation of the Lamport timestamps
36
36
-[ ] Provide a diagram, that traces a sequence of RPC calls together with the Lamport timestamps, that corresponds to a chosen sequence of interactions: Client X joins, Client X Publishes, ..., Client X leaves. Include documentation (system logs) in your appendix.
37
37
-[ ] Provide a link to a Git repo with your source code in the report
38
-
-[] Include system logs, that document the requirements are met, in the appendix of your report
38
+
-[x] Include system logs, that document the requirements are met, in the appendix of your report
39
39
-[ ] Include a readme.md file that describes how to run your program.
A chat event is either a join, leave or message event.
46
+
47
+
```proto
48
+
message ChatEvent {
49
+
oneof event {
50
+
UserJoin join = 2;
51
+
UserLeave leave = 3;
52
+
ChatMessage message = 4;
53
+
}
54
+
55
+
message UserJoin {
56
+
string username = 1;
57
+
}
58
+
59
+
message UserLeave {
60
+
string username = 1;
61
+
}
62
+
63
+
message ChatMessage {
64
+
string username = 1;
65
+
string message = 2;
66
+
}
67
+
}
68
+
```
69
+
70
+
The RPC then turns the event into a message and streams it back to the client.
71
+
72
+
```proto
73
+
message ChatMessage {
74
+
uint64 timestamp = 1;
75
+
string username = 2;
76
+
string message = 3;
77
+
}
78
+
```
79
+
80
+
## 4. Lamport timestamps
40
81
41
82
-[ ] Describe how you have implemented the calculation of the Lamport timestamps
42
83
43
-
## 5 Diagram of lamport
84
+
## 5. Diagram of lamport
44
85
45
86
-[ ] Provide a diagram, that traces a sequence of RPC calls together with the Lamport timestamps, that corresponds to a chosen sequence of interactions: Client X joins, Client X Publishes, ..., Client X leaves. Include documentation (system logs) in your appendix.
46
87
47
-
## Github repository
88
+
## 6. Github repository
48
89
49
-
-[ ] Provide a link to a Git repo with your source code in the report
90
+
<https://github.com/Kanerix/chitty-chat>
50
91
51
-
## System logs
92
+
## 7. System logs
52
93
53
-
-[ ] Include system logs, that document the requirements are met, in the appendix of your report
94
+
The [systems logs](https://github.com/Kanerix/chitty-chat/blob/main/example.log) can be found in the GitHub repo.
54
95
55
-
## README.md
96
+
## 8. README.md
56
97
57
-
-[ ] Include a readme.md file that describes how to run your program.
98
+
The [README.md](https://github.com/Kanerix/chitty-chat/blob/main/readme.log) can be found in the GitHub repo.
0 commit comments