MembershipEvent

sealed interface MembershipEvent

Events emitted by Room describing changes to member membership and liveness.

All events that carry timestamps use kotlin.time.Instant sourced from the injected clock — never kotlin.time.Clock.System.now() directly.

Inheritors

Types

Link copied to clipboard
data class AdmissionFailed(val reason: AdmissionFailure, val at: Instant) : MembershipEvent

The joiner's admit handshake failed terminally — it never entered a roster (joiner perspective only).

Link copied to clipboard
data class HostLost(val at: Instant, val reason: FailureReason, val localFabric: FabricAvailability) : MembershipEvent

The host's transport link was permanently lost (joiner perspective only).

Link copied to clipboard
data class Joined(val member: Member) : MembershipEvent

A new peer completed the admit handshake and entered the roster.

Link copied to clipboard
data class Left(val peerId: PeerId, val reason: LeaveReason) : MembershipEvent

A peer left the room (clean leave or transport disconnect after admission).

Link copied to clipboard
data class LocalFabricLost(val at: Instant, val reason: String) : MembershipEvent

This peer's own end of the fabric carrying this room can no longer carry frames.

Link copied to clipboard

This peer's own end of the room's fabric can carry frames again.

Link copied to clipboard
data class Partitioned(val peerId: PeerId, val at: Instant, val reason: ReconnectReason, val localFabric: FabricAvailability) : MembershipEvent

A peer's transport link dropped; a reconnect window may be open.

Link copied to clipboard
data class Recovered(val peerId: PeerId, val at: Instant) : MembershipEvent

A partitioned peer's link recovered before the window expired.

Link copied to clipboard
data class Resumed(val peerId: PeerId) : MembershipEvent

A partitioned joiner successfully resumed via Room.resume.

Link copied to clipboard
data class WindowOpened(val peerId: PeerId, val expiresAt: Instant) : MembershipEvent

A reconnect window opened for a peer whose link dropped.