Projekt

Obecné

Profil

Project architecture » Historie » Verze 3

Alex Konig, 2021-04-15 18:58

1 1 Alex Konig
h1. Project architecture
2
3 2 Alex Konig
The application consists of two parts
4 1 Alex Konig
5 2 Alex Konig
* Server
6
* Client application
7 1 Alex Konig
8 2 Alex Konig
h1. Server architecture
9
10
In the following text will be specified the communication between parts of the server application.
11
12
In the simple visualisation below are displayed the relevant classes and requests that take place between packages.
13
14
* Model asks parser for information acquired from data
15
* Parser asks data downloader for path to folder containing data
16
17
The path to data folder itself is specified from user as a command line argument upon launching the application.
18
19 1 Alex Konig
!basic_architecture.png!
20
21
h2. Model architecture
22
23
h2. Interface model-parser
24
25 2 Alex Konig
Handing over information in lists containing separate entries.
26
27
Method Parse() enables specifying the interval by which to divide the days. By default parses one day as one entry.
28
29 3 Alex Konig
For example if a day is divided with a 3h interval for each day are created entries for the following times
30 1 Alex Konig
31 3 Alex Konig
* 7-10
32
* 10-13
33
* 13-16
34
* 16-19
35 1 Alex Konig
36
h2. Parser architecture
37
38 3 Alex Konig
Output from parser is relatively universal, The one thing that is not are zcu specific building tags. Those are noted in TagInfo and could be replaced by different ones.
39 1 Alex Konig
40 3 Alex Konig
Interesting classes to note are:
41 1 Alex Konig
42 3 Alex Konig
h3. Csv loader
43 1 Alex Konig
44 3 Alex Konig
Class responsible for loading input data files into memory. Can be swapped for a class processing different types of files as long as it provides the same methods.
45
46
h3. TagInfo
47
48
Class used for mapping tags. Can be easily modified for different input data.
49
50 1 Alex Konig
51
!parser_architecture.png!
52
53 2 Alex Konig
h2. Interface parser-downloader
54 1 Alex Konig
55 2 Alex Konig
Parser asks for folder with data files.
56
57 1 Alex Konig
h2. Loader architecture
58 2 Alex Konig
59
Has to be able to handle request signaling dowload of new data, and requests for path to folder with data.
60
61
h1. Client application architecture
62
63
64
65
h1. Communication server-client