Interface DiscardUnsyncedChangesStrategy
Nesta página
io.realm.mongodb.sync
Interfaces implementadas:
Estratégia que resolve automaticamente uma redefinição de cliente descartando quaisquer dados não sincronizados, mas mantendo o Realm aberto. Qualquer alteração será relatada por meio da coleção normal e das notificações de objeto . Um realm sincronizado pode precisar ser redefinido porque o servidor MongoDB Realm Realm um erro e teve que ser restaurado a partir de um backup ou porque faz muito tempo desde que o cliente se conectou ao servidor para que o servidor tenha girado os logs.
O reinício do cliente, portanto, ocorre porque o servidor não tem as informações completas necessárias para deixar o cliente totalmente atualizado.
O processo de redefinição de descarte de alterações não sincronizadas é o seguinte: quando uma reinício do cliente é acionada, o chamada de resposta de resposta onBeforeReset( Realm ) é invocado, fornecendo uma instância do Realm antes da redefinição e outra após a redefinição, ambas somente para leitura. Depois que o reinício for concluído, o chamada de resposta de chamada onAfterReset(Realm, Realm) seria invocado com uma instância do Realm final .
evento o descarte de dados não sincronizados não seja suficiente para resolver a redefinição que o onError(SyncSession, ClientResetRequiredError) seria invocado, ele permite resolver manualmente a redefinição como seria feito em ManuallyRecoverUnsyncedChangesStrategy.onClientReset(SyncSession, ClientResetRequiredError) .
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
public void | O retorno de chamada é invocado assim que o reinício do cliente acontece. |
public void | Chamada de resposta que indica que um reinício do cliente está prestes a acontecer. |
public void | Chamada de retorno que indica que a redefinição contínua do cliente não pôde ser concluída. |
Métodos herdados
Detalhes do método
onAfterReset
O retorno de chamada é invocado assim que o reinício do cliente acontece. Ele fornece duas Instância de Realm, uma congelada exibindo o estado antes da redefinição e um Realm regular com o estado atual, que pode ser usado para recuperar objeto da redefinição. Parâmetros |
onBeforeReset
Chamada de resposta que indica que um reinício do cliente está prestes a acontecer. Ele fornece uma instância congelada do Realm que será redefinida. Parâmetros
|
onError
Chamada de resposta que indica que o reinício do cliente contínuo não pôde ser concluído. Ele deve ser tratado como ManuallyRecoverUnsyncedChangesStrategy.onClientReset(SyncSession, ClientResetRequiredError) . Parâmetros
|