Docs Menu
Docs Home
/ /
Atlas Device SDK
/ / /

Interface DiscardUnsyncedchangesStratey

項目一覧

  • io.realm.mongodb.sync
  • メソッドの概要
  • 継承されたメソッド
  • メソッドの詳細
  • onAfterReset
  • onBeforeReset
  • onError

実装されたインターフェース:

同期されていないデータを破棄することでクライアントリセットを自動的に解決する戦略ですが、それ以外の場合は Realm を開いたままにします。 すべての変更は、通常のコレクションとオブジェクト通知を通じて報告されます。同期された Realm をリセットする必要がある場合があります。MongoDB Realm Server でエラーが発生し、バックアップから復元する必要があったため、またはクライアントがサーバーでログをローテーションしました。

したがって、クライアントを完全に最新の状態にするために必要な完全な情報がサーバーにないために、クライアントリセットが発生します。

同期されていない変更を破棄するリセット プロセスは次のとおりです。クライアント リセットがトリガーされると、 onBeforeReset(Realm)コールバックが呼び出され、リセット前に Realm のインスタンスとリセット後に別の Realm のインスタンスが提供されます。いずれも読み取り専用です。 リセットによって終了すると、 OnAfterReset(Realm, Realm)のコールバックが最終 Realm のインスタンスで呼び出されます。

同期されていないデータを破棄してもリセットを解決するのに十分でない場合、 onError(SyncSession, ClientResetRequiredError)が呼び出されます。これにより、 ManuallyRecoverUnsyncedchangesStratey.onClientReset(SyncSession, ClientResetRequiredError)と同様に、 がリセットを手動で解決できるようになります。

修飾子と型
メソッドと説明
public void
Realm before,
Realm after
)

クライアントのリセットが発生すると呼び出されるコールバック。

public void

クライアントリセットがこれから実行されることを示すコールバック。

public void

シームレスなクライアント リセットが完了しなかったことを示すコールバック。

public void onAfterReset (
Realm before,
Realm after
)

クライアントのリセットが発生すると呼び出されるコールバック。 これにより、リセット前の状態を表示する固定のものと、現在の状態を持つ通常の Realm インスタンスの 2 つの Realm インスタンスが提供され、リセットからオブジェクトを回復するために使用できます。

パラメーター

  • before - リセット後、 Realmは でRealmされていました。

  • after - リセット後のRealm Realm。

public void onBeforeReset (
Realm realm
)

クライアントリセットがこれから実行されることを示すコールバック。 これは、リセットされる Realm の固定インスタンスを提供します。

パラメーター

  • realm - リセット前の状態で固定化されたRealm

public void onError (
)

シームレスなクライアント リセットが完了しなかったことを示すコールバック。 これはManuallyReoverUnsyncedchangesStratey.onClientReset(SyncSession, ClientResetRequiredError)として処理する必要があります。

パラメーター

戻る

ConnectionState