...
| PlantUML Macro | ||
|---|---|---|
| ||
@startuml autonumber participant ApplicationManager participant RialtoServerManager ApplicationManager -> RialtoServerManager: create(state_observer, config) note right: config allows app manager to specify number of preloaded servers, path to RialtoApplicationSessionServer binary, startup timer and heathcheck interval loop For num of preloaded server RialtoServerManager -> RialtoServerManager: Generate socketpair for Rialto Application Session Server to Server Manager communication RialtoServerManager -> RialtoApplicationSessionServer **: Spawn(server_manager_socket) note left Spawn Application Session Servers to speed up app launch time. end note RialtoServerManager -> RialtoServerManager: Start [startup] second READY timer RialtoApplicationSessionServer -> RialtoApplicationSessionServer: Set current_state = Uninitialised alt RialtoApplicationSessionServer started successfully RialtoApplicationSessionServer -// RialtoServerManager: stateChanged(AppState::Uninitialised) RialtoServerManager -> RialtoServerManager: Cancel READY timer RialtoServerManager --> ApplicationManager: else Session Server initialisation failed RialtoApplicationSessionServer -// RialtoServerManager: stateChanged(AppState::Error) RialtoServerManager -> RialtoServerManager: Cancel READY timer RialtoApplicationSessionServer -> RialtoApplicationSessionServer !!: Exit process RialtoServerManager --> ApplicationManager: else READY timer expired RialtoServerManager -> RialtoServerManager: Kill spawned Rialto Application Session Server process end end RialtoServerManager --> ApplicationManager: end end @enduml |
...