Docs Menu
Docs Home
/ /
io.realm.mongodb.sync

Interfaz Descartar cambios no sincronizados Estrategia

Interfaces implementadas:

Estrategia que resuelve automáticamente un restablecimiento de cliente descartando los datos no sincronizados, pero que, por lo demás, mantiene abierto el dominio. Cualquier cambio se notificará mediante las notificaciones habituales de colección y objeto. Es posible que sea necesario restablecer un dominio sincronizado porque el servidor de dominios MongoDB detectó un error y tuvo que restaurarse desde una copia de seguridad, o porque ha transcurrido demasiado tiempo desde que el cliente se conectó al servidor, por lo que este ha rotado los registros.

El reinicio del cliente ocurre porque el servidor no tiene toda la información necesaria para actualizar completamente el cliente.

El proceso de restablecimiento para descartar cambios no sincronizados es el siguiente: cuando se activa un restablecimiento del cliente, Se invoca la funciónonBeforeReset(Realm), que proporciona una instancia del dominio antes del reinicio y otra después, ambas de solo lectura. Una vez finalizado el reinicio, se invoca la función onAfterReset(Realm, Realm) con una instancia del dominio final.

En el caso de que descartar los datos no sincronizados no sea suficiente para resolver el restablecimiento, se invocará onError(SyncSession, ClientResetRequiredError), que permite resolver manualmente el restablecimiento como se haría en ManuallyRecoverUnsyncedChangesStrategy.onClientReset(SyncSession, ClientResetRequiredError).

Modificador y Tipo
Método y descripción

vacío público

Realm before,
Realm after
)

Se invoca una devolución de llamada una vez que se produce el restablecimiento del cliente.

vacío público

Función de retorno que indica que está a punto de ocurrir un restablecimiento del cliente.

vacío público

Devolución de llamada que indica que no se pudo completar el restablecimiento sin problemas del cliente.

public void onAfterReset (
Realm before,
Realm after
)

Función de retorno invocada una vez que ocurra el restablecimiento del cliente. Proporciona dos instancia Realm, una congelada que muestra el estado antes del restablecimiento y una instancia normal de Realm con el estado actual, que se puede utilizar para recuperar objetos del restablecimiento.

Parámetros

  • before - Reino congelado Reino en el antes y después del reinicio.

  • after - Reino Reino después del reinicio.

public void onBeforeReset (
Realm realm
)

Retrollamada que indica que el cliente está a punto de reiniciarse. Proporciona una instancia congelada del dominio que se va a reiniciar.

Parámetros

  • realm - Reino congelado en su estado antes del reinicio.

public void onError (
)

Retrollamada que indica que no se pudo completar el restablecimiento sin interrupciones del cliente. Debe gestionarse como ManuallyRecoverUnsyncedChangesStrategy.onClientReset(SyncSession, ClientResetRequiredError).

Parámetros

Volver

Estado de conexión

En esta página