SyncSession

public extension SyncSession
  • セッション オブジェクトによって表されるセッションの現在の状態。

    詳細は、次を参照してください:

    RLMSyncSessionState

    宣言

    Swift

    typealias State = RLMSyncSessionState
  • 同期セッションの接続の現在の状態。

    詳細は、次を参照してください:

    RLMSyncConnectionState

    宣言

    Swift

    typealias ConnectionState = RLMSyncConnectionState
  • 特定の進行通知ブロックによって追跡される転送方向(アップロードまたはダウンロード)。

    アップロードまたはダウンロードされたバイト数をアプリがたとえば「進行状況インジケーター UI 」を表示したい場合は、セッションに進行状況通知ブロックを登録できます。

    詳細はこちら

    宣言

    Swift

    enum ProgressDirection : Sendable
  • 進行状況通知ブロックの動作。

    アップロードまたはダウンロードされたバイト数をアプリがたとえば「進行状況インジケーター UI 」を表示したい場合は、セッションに進行状況通知ブロックを登録できます。

    詳細はこちら

    宣言

    Swift

    enum ProgressMode : Sendable
  • 進行状況通知ブロックに対応するトークン。

    通知を停止するには、トークンでinvalidate()を呼び出します。 通知ブロックがすでに自動的に停止されている場合は、 invalidate()を呼び出しても何も行われません。 トークンが破棄される前に、 invalidate()を呼び出す必要があります。

    宣言

    Swift

    typealias ProgressNotificationToken = RLMProgressNotificationToken
  • 進行状況情報をカプセル化する構造体。

    詳細はこちら

    宣言

    Swift

    struct Progress : Sendable
  • 進行状況通知ブロックを登録します。

    セッションが同期サブシステムから進行状況情報をすでに受信している場合は、ブロックはすぐに呼び出されます。 それ以外の場合は、進行状況情報が利用可能になるとすぐに呼び出されます。

    複数のブロックを一度に同じセッションに登録できます。 各ブロックは進行状況通知専用のサイド キューで呼び出されます。

    このメソッドによって返されたトークンは、進行状況通知が必要な限り保持する必要があり、通知が不要になったときはトークンが破棄される前に、 invalidate()メソッドを呼び出してください。

    トークンが返されない場合、通知ブロックは再度呼び出されません。 これが当てはまる理由はいくつかあります。 セッションで以前に致命的なエラーが発生したことがある場合は、進行状況通知ブロックは受け入れられません。 ブロックがforCurrentlyOutstandingWorkモードで構成されていたが、報告する追加の進行状況がない場合(たとえば、転送可能なバイト数と転送バイト数が等しい場合)、ブロックは再度呼び出されません。

    詳細は、次を参照してください:

    ProgressDirection, Progress, ProgressNotificationToken

    宣言

    Swift

    @preconcurrency
    func addProgressNotification(for direction: ProgressDirection,
                                 mode: ProgressMode,
                                 block: @Sendable @escaping (Progress) -> Void) -> ProgressNotificationToken?

    パラメーター

    direction

    この進行状況通知ブロックで追跡する転送方向(アップロードまたはダウンロード)。

    mode

    この進行状況通知ブロックの必要な動作。

    block

    通知が利用可能な場合に呼び出すブロック。

    戻り値

    通知を配信する限り保持する必要があるトークン。

  • 保留中のアップロードやダウンロードが完了するか、セッションが期限切れになるのを待って、指定されたキューにコールバックをディスパッチします。

    詳細は、次を参照してください:

    ProgressDirection

    警告

    このメソッドは、テストのための特別な場合を除き、使用することを意図したものではありません。

    宣言

    Swift

    func wait(for direction: ProgressDirection,
              queue: DispatchQueue? = nil,
              block: @Sendable @escaping (Error?) -> Void)

    パラメーター

    direction

    待機する転送方向(アップロードまたはダウンロード)。

    queue

    コールバックをディスパッチするキュー。

    block

    待機が完了したときに呼び出すブロック。

  • wait(for:) 非同期

    保留中のアップロードまたはダウンロードが完了するか、セッションが期限切れになるまで待ちます。

    詳細は、次を参照してください:

    ProgressDirection

    警告

    このメソッドは、テストのための特別な場合を除き、使用することを意図したものではありません。

    宣言

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    func wait(for direction: ProgressDirection) async throws

    パラメーター

    direction

    待機する転送方向(アップロードまたはダウンロード)。