...
| PlantUML Macro | ||||
|---|---|---|---|---|
| ||||
@startuml autonumber participant ApplicationManager participant RialtoServerManager RialtoServerManager -> RialtoApplicationSessionServer: SetConfiguration(session_management_socket_name, AppState::Inactive, resources, log_level, display_name) note right "resources" structure will specify the maximum decoder resources that the application is permitted to use. For now it shall have a max_playback_sessions property and a supports_web_audio flag. This may be enhanced for things like HD/UHD, audio only etc in future. end note RialtoApplicationSessionServer --> RialtoServerManager: RialtoApplicationSessionServer -> RialtoApplicationSessionServer: Create listening socket & bind to session_management_socket_name opt display_name defined RialtoApplicationSessionServer -> RialtoApplicationSessionServer: Set WAYLAND_DISPLAY environment variable end alt State transition successful RialtoApplicationSessionServer -> RialtoApplicationSessionServer: Set current_state = Inactive RialtoApplicationSessionServer -// RialtoServerManager: stateChanged(AppState::Inactive) RialtoServerManager -// ApplicationManager: StateChanged(application_id, AppState::Inactive) ApplicationManager -> RialtoServerManager: getAppConnectionInfo() RialtoServerManager --> ApplicationManager: session_management_socket_name else State transition failed RialtoApplicationSessionServer -> RialtoApplicationSessionServer: Unbind/free session management socket (if created) RialtoApplicationSessionServer -// RialtoServerManager: stateChanged(AppState::Error) RialtoServerManager -// ApplicationManager: stateChanged(application_id, AppState::Error) RialtoApplicationSessionServer -> RialtoApplicationSessionServer !!: Exit process end opt Server preloading is active note over ApplicationManager, RialtoApplicationSessionServer: Preload RialtoApplicationSessionServer in place of the one that has just been allocated ref over ApplicationManager, RialtoApplicationSessionServer : [[#RialtoApplicationSessionManagement-NotRunning→Unitialized(serverpreloading) Not Running→Unitialized (server preloading)]] end @enduml |
...