Menu Docs

Página inicial do DocsDesenvolver aplicaçõesAtlas Device SDKs

Interface DiscardUnsyncedChangesStrategy

Nesta página

  • io.realm.mongodb.sync
  • Resumo do método
  • Métodos herdados
  • Detalhes do método
  • onAfterReset
  • onBeforeReset
  • onError

Interfaces implementadas:

Estratégia que resolve automaticamente um reinício do cliente descartando quaisquer dados não sincronizados, mas mantendo o Realm aberto. Todas as alterações serão relatadas por meio da collection normal e de notificações de objeto.Um Realm sincronizado pode precisar ser redefinido porque o MongoDB Realm encontrou 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 então o servidor girado os registros.

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 redefinição de cliente é acionada, a chamada de resposta onBeforeReset(Realm) é invocada, 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 retorno de chamada onAfterReset(Realm, Realm) será invocado com uma instância do Realm final.

Caso 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) .

Modificador e tipo
Método e descrição
público vazio
Antes do Realm ,
Realm after
)

O retorno de chamada é invocado assim que o reinício do cliente acontece.

público vazio

Chamada de resposta que indica que um reinício do cliente está prestes a acontecer.

público vazio

Chamada de retorno que indica que a redefinição contínua do cliente não pôde ser concluída.

público vazio onAfterReset (
Antes do Realm ,
Realm after
)

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

  • before - Realm congelado Realm antes após a redefinição.

  • after - Realm Realm após o reinício.

público vazio onBeforeReset (
Realm realm
)

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

  • realm - Realm congelado em seu estado antes da redefinição.

público vazio onError (
)

chamada de resposta que indica que o reinício do cliente não pôde ser concluído. Ele deve ser tratado como ManuallyReviewUnsyncedChangesStrategy.onClientReset(SyncSession, ClientResetRequiredError) .

Parâmetros

← Estado de conexão enum