user
-
現在認証されているユーザーを新しい ID にリンクします。ID は、パラメータとして指定された認証情報によって定義されます。 これは、この
User
が、作成されたクライアントで現在認証されている場合にのみ成功します。 成功すると、新しいリンクされた認証情報を持つ新しいユーザーが返されます。 @ param 認証情報Credentials
はユーザーを新しい ID にリンクするために使用します。 @completed 最終的にユーザーのデータとともにResult.success(User)
またはResult.failure(Error)
を返す完了。宣言
Swift
@preconcurrency func linkUser(credentials: Credentials, _ completion: @Sendable @escaping (Result<User, Error>) -> Void)
-
現在認証されているユーザーを新しい ID にリンクします。ID は、パラメータとして指定された認証情報によって定義されます。 これは、この
User
が、作成されたクライアントで現在認証されている場合にのみ成功します。 成功すると、新しいリンクされた認証情報を持つ新しいユーザーが返されます。 @ param 認証情報Credentials
はユーザーを新しい ID にリンクするために使用します。 @returns は最終的にResult.success
またはError
を返す出版社を返します。宣言
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) func linkUser(credentials: Credentials) -> Future<User, Error>
-
現在認証されているユーザーを新しい ID にリンクします。ID は、パラメータとして指定された認証情報によって定義されます。 これは、この
User
が、作成されたクライアントで現在認証されている場合にのみ成功します。 成功すると、新しいリンクされた認証情報を持つ新しいユーザーが返されます。宣言
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) func linkUser(credentials: Credentials) async throws -> User
パラメーター
credentials
ユーザーを新しい ID にリンクするために使用される
Credentials
。戻り値
ID が正常に更新された後の
User
。 -
同期構成インスタンス を作成します。
宣言
Swift
@preconcurrency func configuration<T: BSON>(partitionValue: T, clientResetMode: ClientResetMode = .recoverUnsyncedChanges(beforeReset: nil, afterReset: nil), cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration
パラメーター
partitionValue
Realm が分割される
BSON
値。clientResetMode
クライアントのリセット中にファイル回復の動作を決定します。 デフォルトでは
.recoverUnsyncedChanges
。cancelAsyncOpenOnNonFatalErrors
デフォルトでは、Realm.asyncOpen() は、接続試行のタイムアウトなど致命的でない接続エラーを無視し、成功するまで再試行します。 これが
true
に設定されている場合は、代わりにエラーがコールバックに報告され、非同期オープンはキャンセルされます。 -
同期構成インスタンス を作成します。
宣言
Swift
@preconcurrency func configuration(partitionValue: AnyBSON, clientResetMode: ClientResetMode = .recoverUnsyncedChanges(beforeReset: nil, afterReset: nil), cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration
パラメーター
partitionValue
パーティション値として
nil
を受け取ります。clientResetMode
クライアントのリセット中にファイル回復の動作を決定します。 デフォルトでは
.recoverUnsyncedChanges
。cancelAsyncOpenOnNonFatalErrors
デフォルトでは、Realm.asyncOpen() は、接続試行のタイムアウトなど致命的でない接続エラーを無視し、成功するまで再試行します。 これが
true
に設定されている場合は、代わりにエラーがコールバックに報告され、非同期オープンはキャンセルされます。 -
ユーザーのカスタム データ。 これは、Atlas App Services アプリで構成されます。
宣言
Swift
var customData: Document { get }
-
MongoDB のリモート インスタンスを操作するためのクライアント
宣言
Swift
func mongoClient(_ serviceName: String) -> MongoClient
パラメーター
serviceName
MongoDB サービスの名前
戻り値
リモート MongoDB サービスを操作するために使用される
MongoClient
-
指定された名前と引数を使用して Atlas App Services 関数を呼び出します。
user.functions.sum([1, 2, 3, 4, 5]) { sum, error in guard case let .int64(value) = sum else { print(error?.localizedDescription) } assert(value == 15) }
動的ノード名(上記の例では
sum
)は、関数名に直接関連付けられています。 最初の引数は、関数に提供する引数のBSONArray
です。 2 番目の最後の引数は、関数呼び出しが完了したときに呼び出される完了ハンドラーです。 このハンドラーは非メインのグローバルDispatchQueue
で実行されます。宣言
Swift
var functions: Functions { get }
-
ユーザーのカスタム データを更新します。 これにより、ユーザーの認証セッションが更新されます。 @returns はユーザーのデータまたは
Error
を含むDictionary
を最終的に返す パブリッシャー を返します。宣言
Swift
func refreshCustomData() -> Future<[AnyHashable : Any], Error>
-
ユーザーを削除します。これがログアウトし、このユーザーに関連するセッションを破棄します。 ユーザーが見つからない場合、またはすでに削除されている場合、完了ブロックはエラーを返します。 @returns は最終的に
Result.success
またはError
を返す出版社を返します。宣言
Swift
func remove() -> Future<Void, Error>
-
現在のユーザーをログアウトします。ユーザーの状態は、匿名ユーザーである場合は
Removed
に設定され、ユーザー名/パスワードまたはサードパーティ認証クライアントによって認証されている場合はLoggedOut
に設定されます。ログアウト リクエストが失敗した場合、このメソッドはローカル認証状態をクリアします。 @returns は最終的にResult.success
またはError
を返す出版社を返します。宣言
Swift
func logOut() -> Future<Void, Error>
-
は、Atlas App Services アプリからこのユーザーを完全に削除します。 ユーザー状態は
Removed
に設定され、セッションは破棄されます。 削除リクエストが失敗した場合、ローカル認証状態は復元されません。 @returns は最終的にResult.success
またはError
を返す出版社を返します。宣言
Swift
func delete() -> Future<Void, Error>
-
ユーザーが変更するたびに Vid を発行する出版社。
名前に関係なく、ユーザーが変更した後に実際に発行されます。
宣言
Swift
public var objectWillChange: AnyPublisher<UserPublisher.Output, UserPublisher.Failure> { get }
-
ユーザーのカスタム データを更新します。 これにより、ユーザーの認証セッションが更新されます。 @completed 最終的にユーザーのデータとともに
Result.success(Dictionary)
またはResult.failure(Error)
を返す完了。宣言
Swift
@preconcurrency func refreshCustomData(_ completion: @escaping @Sendable (Result<[AnyHashable : Any], Error>) -> Void)
-
ユーザーのカスタム データを更新します。 これにより、ユーザーの認証セッションが更新されます。
宣言
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) @discardableResult func refreshCustomData() async throws -> Document
-
柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
同じアプリ内で柔軟な同期とパーティション同期を組み合わせることはできません。つまり、柔軟な同期構成で Realm を開いた場合、PBS 構成で Realm を開くことはできず、その逆の方法も含まれます。
宣言
Swift
public func flexibleSyncConfiguration(clientResetMode: ClientResetMode = .recoverUnsyncedChanges(), cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration
パラメーター
clientResetMode
クライアントのリセット中にファイル回復の動作を決定します。 デフォルトでは
.recoverUnsyncedChanges
。cancelAsyncOpenOnNonFatalErrors
デフォルトでは、Realm.asyncOpen() は、接続試行のタイムアウトなど致命的でない接続エラーを無視し、成功するまで再試行します。 これが
true
に設定されている場合は、代わりにエラーがコールバックに報告され、非同期オープンはキャンセルされます。 -
flexibleSyncConfiguration(clientResetMode:
cancelAsyncOpenOnNonFatalErrors: initialSubscriptions: rerunOnOpen: ) 柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
同じアプリ内で柔軟な同期とパーティション同期を組み合わせることはできません。つまり、柔軟な同期構成で Realm を開いた場合、PBS 構成で Realm を開くことはできず、その逆の方法も含まれます。
rerunOnOpen
を使用すると、時間範囲などの動的クエリを再実行する必要があるケースに対応します。var config = user.flexibleSyncConfiguration(initialSubscriptions: { subscriptions in subscriptions.append(QuerySubscription<User>() { $0.birthdate < Date() && $0.birthdate > Calendar.current.date(byAdding: .year, value: 21)! }) }, rerunOnOpen: true)
宣言
Swift
@preconcurrency public func flexibleSyncConfiguration(clientResetMode: ClientResetMode = .recoverUnsyncedChanges(), cancelAsyncOpenOnNonFatalErrors: Bool = false, initialSubscriptions: @escaping @Sendable (SyncSubscriptionSet) -> Void, rerunOnOpen: Bool = false) -> Realm.Configuration
パラメーター
clientResetMode
クライアントのリセット中にファイル回復の動作を決定します。 デフォルトでは
.recoverUnsyncedChanges
。initialSubscriptions
サブスクリプションセット インスタンスを受け取るブロック。Realm が最初に開かれたときに実行されるサブスクリプションの初期セットを追加するために使用できます。
rerunOnOpen
true の場合、 はアプリを起動するたびに、指定されたサブスクリプションの初期セットを実行できるようにします。 これは、 動的時間範囲 や静的変数の再計算を必要とするその他のクエリの再実行に使用できます。
cancelAsyncOpenOnNonFatalErrors
デフォルトでは、Realm.asyncOpen() は、接続試行のタイムアウトなど致命的でない接続エラーを無視し、成功するまで再試行します。 これが
true
に設定されている場合は、代わりにエラーがコールバックに報告され、非同期オープンはキャンセルされます。