SyncSession
A session controls how data is synchronized between a single Realm on the device and MongoDB on the server.
A SyncSession
is created by opening a Realm instance using a SyncConfiguration. Once a session has been created, it will continue to exist until the app is closed or the Realm is closed.
A session is controlled by Realm, but can provide additional information in case of errors. These errors are passed along in the ErrorHandler.
When creating a session, Realm will establish a connection to the server. This connection is controlled by Realm and might be shared between multiple sessions.
The session itself has a different lifecycle than the underlying connection.
The SyncSession object is thread safe.
Types
Interface used to report any session errors.
The possible states for SyncSession to be.
Properties
The SyncConfiguration responsible for controlling the session.
The current ConnectionState.
The current session state. See State for more details about each state.
Functions
Create a Flow of ConnectionStateChange-events to receive notifications of updates to the session's connection state.
Calling this method will block until all known remote changes have been downloaded and applied to the Realm or the specified timeout is hit. This will involve network access, so calling this method should only be done from a non-UI thread.
Create a Flow of Progress-events that track either downloads or uploads done by the SyncSession.
Calling this method will block until all known local changes have been uploaded to the server or the specified timeout is hit. This will involve network access, so calling this method should only be done from a non-UI thread.