The front-end protocol
The front-end protocol (FEP) is an internal protocol used by the runtime system to synchronize the abstract user interface (AUI) representation on the front-end side. This protocol defines a simple set of operations to modify the AUI tree. This protocol is based on a command processing principle (send command, receive answer) that can be serialized for transport over any network protocol, like HTTP for example.
![Communication between the runtime system and the front-end diagram](Images/DUIFig02.jpg)
- Initialization phase: The runtime system sends the initial AUI tree.
- The front-end builds the graphical user interface based on the AUI tree.
- The front-end waits for a user interaction (mouse click, keyboard typing).
- When the user performs some interaction, the front-end sends front-end events corresponding to the modifications made by the user.
- Front-end events are analyzed and validated by the runtime system.
- The runtime system sends back the result of the front-end requests, by way of AUI tree modification commands.
- When receiving these commands, the front-end modifies its version of the AUI tree and updates the graphical user interface. It then waits for new user interactions (step 3).