2019-01-20 12:54:56 +01:00
# Request Management
The request management works with different layers.
2019-02-12 22:13:32 +01:00
## Layers
2019-01-20 12:54:56 +01:00
Each layer contains out of __2 classes__ and __2 interfaces__ for it.
2019-02-03 01:01:26 +01:00
One class contains the __logic__ and the other class contains the __service__ . This makes the classes easier testable and mockable and follows the [SOLID Design Principles ](https://en.wikipedia.org/wiki/SOLID ).
2019-01-20 12:54:56 +01:00
2019-02-12 22:13:32 +01:00
### Entity
2019-02-03 01:01:26 +01:00
A **requested entity** contains the attributes to manage the entity which should be handled by an action
2019-01-20 12:54:56 +01:00
#### Right
2019-02-12 20:21:48 +01:00
This is the basic request layer from which the other layers inhiere. A **requested right** contains a **requested entity** .
2019-01-20 12:54:56 +01:00
#### User
2019-02-12 20:21:48 +01:00
A **requested user** is a parent of **requested action** and contains out of one **requested right** .
2019-01-20 12:54:56 +01:00
#### Action
2019-02-12 20:21:48 +01:00
A **requested action** inhieres from **requested user** and contains a **requested user** .
2019-02-12 22:13:32 +01:00
## UML Class Diagram
The following diagram shows the relations between the different request layers and services:
