An instant messaging application with a self-hostable server.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
 
 

501 lines
11 KiB

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<diagram program="umlet" version="14.3.0">
<zoom_level>9</zoom_level>
<element>
<id>UMLActor</id>
<coordinates>
<x>72</x>
<y>540</y>
<w>54</w>
<h>99</h>
</coordinates>
<panel_attributes>Client1</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>2196</x>
<y>504</y>
<w>198</w>
<h>171</h>
</coordinates>
<panel_attributes>Database
halign=center
bg=orange
--</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>351</x>
<y>513</y>
<w>90</w>
<h>117</h>
</coordinates>
<panel_attributes>Main</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>531</x>
<y>513</y>
<w>90</w>
<h>117</h>
</coordinates>
<panel_attributes>Startup
bg=orange</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>702</x>
<y>513</y>
<w>90</w>
<h>117</h>
</coordinates>
<panel_attributes>Client
bg=yellow</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>873</x>
<y>513</y>
<w>90</w>
<h>117</h>
</coordinates>
<panel_attributes>LocalDB
bg=pink</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>1548</x>
<y>522</y>
<w>189</w>
<h>117</h>
</coordinates>
<panel_attributes>LoginCredentialsProcessor
bg=cyan</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>1809</x>
<y>522</y>
<w>135</w>
<h>117</h>
</coordinates>
<panel_attributes>PersistenceManager
bg=gray</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>396</x>
<y>729</y>
<w>189</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
start javaFX app</panel_attributes>
<additional_attributes>190.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>387</x>
<y>720</y>
<w>18</w>
<h>54</h>
</coordinates>
<panel_attributes/>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>387</x>
<y>621</y>
<w>27</w>
<h>117</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;110.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>567</x>
<y>621</y>
<w>27</w>
<h>117</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;110.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>738</x>
<y>621</y>
<w>27</w>
<h>216</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;220.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>909</x>
<y>621</y>
<w>27</w>
<h>153</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;150.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>567</x>
<y>720</y>
<w>18</w>
<h>396</h>
</coordinates>
<panel_attributes>bg=orange</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>738</x>
<y>819</y>
<w>18</w>
<h>558</h>
</coordinates>
<panel_attributes>bg=yellow</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>909</x>
<y>756</y>
<w>18</w>
<h>621</h>
</coordinates>
<panel_attributes>bg=pink</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>576</x>
<y>756</y>
<w>351</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
initialize</panel_attributes>
<additional_attributes>370.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>1062</x>
<y>513</y>
<w>90</w>
<h>117</h>
</coordinates>
<panel_attributes>Receiver
bg=red</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1098</x>
<y>621</y>
<w>27</w>
<h>270</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;280.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>1098</x>
<y>873</y>
<w>18</w>
<h>504</h>
</coordinates>
<panel_attributes>bg=red</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>576</x>
<y>1071</y>
<w>180</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
init receivers
layer=0</panel_attributes>
<additional_attributes>180.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>576</x>
<y>828</y>
<w>180</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
perform handshake</panel_attributes>
<additional_attributes>180.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>747</x>
<y>873</y>
<w>369</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
init handhake receivers
layer=0</panel_attributes>
<additional_attributes>390.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>747</x>
<y>1071</y>
<w>369</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
init permanent receivers
layer=0</panel_attributes>
<additional_attributes>390.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1638</x>
<y>630</y>
<w>27</w>
<h>306</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;320.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>1638</x>
<y>918</y>
<w>18</w>
<h>558</h>
</coordinates>
<panel_attributes>bg=cyan</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>747</x>
<y>918</y>
<w>909</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
send login credentials
layer=0</panel_attributes>
<additional_attributes>990.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1872</x>
<y>630</y>
<w>27</w>
<h>306</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;320.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>1872</x>
<y>918</y>
<w>18</w>
<h>558</h>
</coordinates>
<panel_attributes>bg=gray</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1881</x>
<y>918</y>
<w>423</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
use queries
layer=0</panel_attributes>
<additional_attributes>450.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>2286</x>
<y>666</y>
<w>27</w>
<h>270</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;280.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>2286</x>
<y>918</y>
<w>18</w>
<h>558</h>
</coordinates>
<panel_attributes>bg=orange</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1647</x>
<y>918</y>
<w>243</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=&lt;&lt;-
aquire data
layer=0</panel_attributes>
<additional_attributes>250.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1881</x>
<y>954</y>
<w>423</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=-&gt;&gt;
send query responses
layer=0</panel_attributes>
<additional_attributes>450.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1647</x>
<y>954</y>
<w>243</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=-&gt;&gt;
send aquired data
layer=0</panel_attributes>
<additional_attributes>250.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1107</x>
<y>990</y>
<w>549</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=-&gt;&gt;
send user, chats, pending messages, etc.
layer=0</panel_attributes>
<additional_attributes>590.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>918</x>
<y>990</y>
<w>198</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=-&gt;&gt;
store data
layer=0</panel_attributes>
<additional_attributes>200.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>99</x>
<y>729</y>
<w>306</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=-&gt;
start app</panel_attributes>
<additional_attributes>10.0;20.0;320.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>90</x>
<y>621</y>
<w>27</w>
<h>117</h>
</coordinates>
<panel_attributes>lt=.</panel_attributes>
<additional_attributes>10.0;10.0;10.0;110.0</additional_attributes>
</element>
<element>
<id>UMLGeneric</id>
<coordinates>
<x>90</x>
<y>720</y>
<w>18</w>
<h>54</h>
</coordinates>
<panel_attributes/>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>747</x>
<y>1026</y>
<w>369</w>
<h>36</h>
</coordinates>
<panel_attributes>lt=-&gt;&gt;
online
layer=0</panel_attributes>
<additional_attributes>390.0;20.0;10.0;20.0</additional_attributes>
</element>
</diagram>