SyncApiClientImpl

class SyncApiClientImpl(httpClient: MatrixClientServerApiHttpClient) : EventEmitterImpl, SyncApiClient

Constructors

Link copied to clipboard

Functions

Link copied to clipboard
open suspend override fun cancel(wait: Boolean)
Link copied to clipboard
open suspend override fun emitEvent(event: Event<*>)
Link copied to clipboard
open suspend override fun start(filter: String?, setPresence: Presence?, currentBatchToken: MutableStateFlow<String?>, timeout: Long, withTransaction: suspend (block: suspend () -> Unit) -> Unit, asUserId: UserId?, wait: Boolean, scope: CoroutineScope)
Link copied to clipboard
open suspend override fun <T> startOnce(filter: String?, setPresence: Presence?, currentBatchToken: MutableStateFlow<String?>, timeout: Long, withTransaction: suspend (block: suspend () -> Unit) -> Unit, asUserId: UserId?, runOnce: suspend (Sync.Response) -> T): Result<T>
Link copied to clipboard
open suspend override fun stop(wait: Boolean)
Link copied to clipboard
open override fun <T : EventContent> subscribe(clazz: KClass<T>, subscriber: suspend (Event<T>) -> Unit)
Link copied to clipboard
Link copied to clipboard
open override fun subscribeAllEvents(subscriber: suspend (Event<EventContent>) -> Unit)
Link copied to clipboard
open override fun subscribeDeviceLists(subscriber: DeviceListsSubscriber)
Link copied to clipboard
open override fun subscribeOlmKeysChange(subscriber: OlmKeysChangeSubscriber)
Link copied to clipboard
open override fun subscribeSyncResponse(subscriber: SyncResponseSubscriber)
Link copied to clipboard
open suspend override fun sync(filter: String?, since: String?, fullState: Boolean, setPresence: Presence?, timeout: Long, asUserId: UserId?): Result<Sync.Response>

This is the plain sync request. If you want to subscribe to events and ore, use start or startOnce.

Link copied to clipboard
open override fun <T : EventContent> unsubscribe(clazz: KClass<T>, subscriber: suspend (Event<T>) -> Unit)
Link copied to clipboard
Link copied to clipboard
open override fun unsubscribeAllEvents(subscriber: suspend (Event<EventContent>) -> Unit)
Link copied to clipboard
open override fun unsubscribeDeviceLists(subscriber: DeviceListsSubscriber)
Link copied to clipboard
open override fun unsubscribeOlmKeysChange(subscriber: OlmKeysChangeSubscriber)
Link copied to clipboard
open override fun unsubscribeSyncResponse(subscriber: SyncResponseSubscriber)

Properties

Link copied to clipboard
open override val currentSyncState: StateFlow<SyncState>

Extensions

Link copied to clipboard
suspend fun SyncApiClient.startOnce(filter: String? = null, setPresence: Presence? = null, currentBatchToken: MutableStateFlow<String?> = MutableStateFlow(null), timeout: Long = 0, withTransaction: suspend (block: suspend () -> Unit) -> Unit = { it() }, asUserId: UserId? = null): Result<Unit>