RemoteLifecycleEvent

sealed interface RemoteLifecycleEvent<out Owner>(source)

Committed lifecycle notifications emitted inside the service's execution owner. Adapters translate these into their platform event API; listener failures never undo committed state. UI identity is scoped to the service and connection; application event fields are detached snapshots.

Inheritors

Types

Link copied to clipboard
data class Closed<Owner>(val owner: Owner, val identity: Long, val session: UiSession, val presentation: UiPresentation?, val category: UiCategory?, val reason: UiCloseReason) : RemoteLifecycleEvent<Owner>

Terminal ownership, including rejected openings that never emitted Opened.

Link copied to clipboard

Retirement of a previously ready connection after every UI has closed.

Link copied to clipboard
data class Opened<Owner>(val owner: Owner, val identity: Long, val session: UiSession, val presentation: UiPresentation, val category: UiCategory?) : RemoteLifecycleEvent<Owner>

First acknowledged native presentation, including initially hidden HUDs.

Link copied to clipboard
data class PresentationChanged<Owner>(val owner: Owner, val identity: Long, val session: UiSession, val previous: UiPresentation, val presentation: UiPresentation, val category: UiCategory?) : RemoteLifecycleEvent<Owner>

Acknowledged transition between distinct presentations of one retained session.

Link copied to clipboard
data class Ready(val capabilities: UiClientCapabilities) : RemoteLifecycleEvent<Nothing>

Successful negotiation, once per connection generation.