RLMuser
Objective-C
@interface RLMUser : NSObject
Swift
@_nonSendable(_assumed) class RLMUser : NSObject, @unchecked Sendable
RLMUser
インスタンスは、単一の Realm アプリ ユーザー アカウントを表します。
ユーザーは 1 つ以上の認証情報を関連付けることができます。 これらの認証情報は認証プロバイダに対してユーザーを一意に識別し、Atlas App Services ユーザー アカウントにサインインするために使用されます。
ユーザー オブジェクトは SDK API 経由でのみ提供され、直接初期化することはできないことに注意してください。 ユーザー オブジェクトには任意のスレッドからアクセスできます。
-
このユーザーを識別する一意の Atlas App Services string。 これは ID とは異なることに注意してください。ユーザーは複数の ID を持っていても、識別子は 1 つだけです。 RLMuserIdentity を参照してください。
宣言
Objective-C
@property (nonatomic, readonly) NS_SWIFT_NAME(id) NSString *identifier;
Swift
var id: String { get }
-
現在ユーザーにリンクされている ID の配列を返します。
宣言
Objective-C
@property (nonatomic, readonly) NSArray<RLMUserIdentity *> *_Nonnull identities;
Swift
var identities: [RLMUserIdentity] { get }
-
App Services にアクセスするために使用されるユーザーのリフレッシュ トークン。
デフォルトでは、リフレッシュ トークンは発行後 60 日で期限切れになります。 この時間は、アプリの更新トークンが 30 分から 180 日の間で設定できます。
管理 UI または 管理 API から、アプリ内のすべてのセッションのリフレッシュ トークンの有効期限を構成できます。
宣言
Objective-C
@property (nonatomic, readonly, nullable) NSString *refreshToken;
Swift
var refreshToken: String? { get }
-
App Services にアクセスするために使用されるユーザーのアクセス トークン。
これは、Data API や GraphQL などの Atlas App Services に HTTP リクエストを行うために必要です。 機密データとして扱う必要があります。
Realm SDK はアクセス トークンを自動的に管理し、有効期限が切れるとリフレッシュします。
宣言
Objective-C
@property (nonatomic, readonly, nullable) NSString *accessToken;
Swift
var accessToken: String? { get }
-
ユーザーの現在の状態。
宣言
Objective-C
@property (nonatomic, readonly) RLMUserState state;
Swift
var state: RLMUserState { get }
-
ユーザーがログインしているかどうかを示します。 アクセス トークンとリフレッシュ トークンが空でない場合は true を返します。
宣言
Objective-C
@property (nonatomic, readonly) BOOL isLoggedIn;
Swift
var isLoggedIn: Bool { get }
-
指定されたパーティション値に対して、パーティションベースの同期構成インスタンスを作成します。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *)configurationWithPartitionValue: (nullable id<RLMBSON>)partitionValue;
パラメーター
partitionValue
Realm が分割される
RLMBSON
値。戻り値
指定されたパーティション値を使用するように設定された同期構成を持つデフォルトの 構成オブジェクト 。
-
指定されたパーティション値に対して、パーティションベースの同期構成インスタンスを作成します。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) configurationWithPartitionValue:(nullable id<RLMBSON>)partitionValue clientResetMode:(RLMClientResetMode)clientResetMode;
パラメーター
partitionValue
Realm が分割される
RLMBSON
値。clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
戻り値
指定されたパーティション値を使用するように設定された同期構成を持つ 構成オブジェクト 。
-
指定されたパーティション値に対して、パーティションベースの同期構成インスタンスを作成します。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) configurationWithPartitionValue:(nullable id<RLMBSON>)partitionValue clientResetMode:(RLMClientResetMode)clientResetMode notifyBeforeReset: (nullable RLMClientResetBeforeBlock)beforeResetBlock notifyAfterReset: (nullable RLMClientResetAfterBlock)afterResetBlock;
パラメーター
partitionValue
Realm が分割される
RLMBSON
値。clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
beforeResetBlock
クライアントがリセットされる前に通知するコールバック。 「 」を参照してください。
RLMClientResetBeforeBlock
afterResetBlock
クライアントがリセットされた後に通知するコールバック。 「 」を参照してください。
RLMClientResetAfterBlock
戻り値
指定されたパーティション値を使用するように設定された同期構成を持つ 構成オブジェクト 。
-
指定されたパーティション値に対して、パーティションベースの同期構成インスタンスを作成します。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) configurationWithPartitionValue:(nullable id<RLMBSON>)partitionValue clientResetMode:(RLMClientResetMode)clientResetMode manualClientResetHandler: (nullable RLMSyncErrorReportingBlock)manualClientResetHandler;
パラメーター
partitionValue
Realm が分割される
RLMBSON
値。clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
manualClientResetHandler
クライアントのリセット中に呼び出されるエラー報告ブロック。 @
RLMSyncErrorReportingBlock
とRLMClientResetInfo
を参照戻り値
指定されたパーティション値を使用するように設定された同期構成を持つ 構成オブジェクト 。
-
柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
注意
サーバーサイドの単一の Device Sync アプリは、パーティションベースの Realm またはフレキシブルな同期ベースの Realm のいずれかでデータを同期できます。 アプリケーションにパーティションベースと柔軟な同期レルムの両方を含めるには、複数のサーバー側 Device Sync アプリを使用する必要があります。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *)flexibleSyncConfiguration;
戻り値
柔軟な同期構成を持つ
RLMRealmConfiguration
インスタンス。 -
柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
注意
サーバーサイドの単一の Device Sync アプリは、パーティションベースの Realm またはフレキシブルな同期ベースの Realm のいずれかでデータを同期できます。 アプリケーションにパーティションベースと柔軟な同期レルムの両方を含めるには、複数のサーバー側 Device Sync アプリを使用する必要があります。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) flexibleSyncConfigurationWithClientResetMode: (RLMClientResetMode)clientResetMode notifyBeforeReset: (nullable RLMClientResetBeforeBlock) beforeResetBlock notifyAfterReset: (nullable RLMClientResetAfterBlock) afterResetBlock;
パラメーター
clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
beforeResetBlock
クライアントがリセットされる前に通知するコールバック。 「 」を参照してください。
RLMClientResetBeforeBlock
afterResetBlock
クライアントがリセットされた後に通知するコールバック。 「 」を参照してください。
RLMClientResetAfterBlock
戻り値
柔軟な同期構成を持つ
RLMRealmConfiguration
インスタンス。 -
柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
注意
サーバーサイドの単一の Device Sync アプリは、パーティションベースの Realm またはフレキシブルな同期ベースの Realm のいずれかでデータを同期できます。 アプリケーションにパーティションベースと柔軟な同期レルムの両方を含めるには、複数のサーバー側 Device Sync アプリを使用する必要があります。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) flexibleSyncConfigurationWithClientResetMode: (RLMClientResetMode)clientResetMode manualClientResetHandler: (nullable RLMSyncErrorReportingBlock) manualClientResetHandler;
パラメーター
clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
manualClientResetHandler
クライアントのリセット中に呼び出されるエラー報告ブロック。 @
RLMSyncErrorReportingBlock
とRLMClientResetInfo
を参照戻り値
柔軟な同期構成を持つ
RLMRealmConfiguration
インスタンス。 -
柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
注意
サーバーサイドの単一の Device Sync アプリは、パーティションベースの Realm またはフレキシブルな同期ベースの Realm のいずれかでデータを同期できます。 アプリケーションにパーティションベースと柔軟な同期レルムの両方を含めるには、複数のサーバー側 Device Sync アプリを使用する必要があります。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) flexibleSyncConfigurationWithInitialSubscriptions: (nonnull RLMFlexibleSyncInitialSubscriptionsBlock)initialSubscriptions rerunOnOpen:(BOOL)rerunOnOpen;
パラメーター
initialSubscriptions
サブスクリプションセット インスタンスを受け取るブロック。Realm が最初に開かれたときに実行されるサブスクリプションの初期セットを追加するために使用できます。
rerunOnOpen
true の場合、 はアプリを起動するたびに、指定されたサブスクリプションの初期セットを実行できるようにします。 これは、 動的時間範囲 や静的変数の再計算を必要とするその他のクエリの再実行に使用できます。
戻り値
柔軟な同期構成を持つ
RLMRealmConfiguration
インスタンス。 -
-flexibleSyncConfigurationWithInitialSubscriptions:
rerunOnOpen: clientResetMode: notifyBeforeReset: notifyAfterReset: 柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
注意
サーバーサイドの単一の Device Sync アプリは、パーティションベースの Realm またはフレキシブルな同期ベースの Realm のいずれかでデータを同期できます。 アプリケーションにパーティションベースと柔軟な同期レルムの両方を含めるには、複数のサーバー側 Device Sync アプリを使用する必要があります。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) flexibleSyncConfigurationWithInitialSubscriptions: (nonnull RLMFlexibleSyncInitialSubscriptionsBlock)initialSubscriptions rerunOnOpen:(BOOL)rerunOnOpen clientResetMode: (RLMClientResetMode)clientResetMode notifyBeforeReset: (nullable RLMClientResetBeforeBlock) beforeResetBlock notifyAfterReset: (nullable RLMClientResetAfterBlock) afterResetBlock;
パラメーター
initialSubscriptions
サブスクリプションセット インスタンスを受け取るブロック。Realm が最初に開かれたときに実行されるサブスクリプションの初期セットを追加するために使用できます。
rerunOnOpen
true の場合、 はアプリを起動するたびに、指定されたサブスクリプションの初期セットを実行できるようにします。 これは、 動的時間範囲 や静的変数の再計算を必要とするその他のクエリの再実行に使用できます。
clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
beforeResetBlock
クライアントがリセットされる前に通知するコールバック。 「 」を参照してください。
RLMClientResetBeforeBlock
afterResetBlock
クライアントがリセットされた後に通知するコールバック。 「 」を参照してください。
RLMClientResetAfterBlock
戻り値
柔軟な同期構成を持つ
RLMRealmConfiguration
インスタンス。 -
-flexibleSyncConfigurationWithInitialSubscriptions:
rerunOnOpen: clientResetMode: manualClientResetHandler: 柔軟な同期構成インスタンスを作成します。これを使用して、柔軟な同期をサポートする Realm を開きます。
注意
サーバーサイドの単一の Device Sync アプリは、パーティションベースの Realm またはフレキシブルな同期ベースの Realm のいずれかでデータを同期できます。 アプリケーションにパーティションベースと柔軟な同期レルムの両方を含めるには、複数のサーバー側 Device Sync アプリを使用する必要があります。
宣言
Objective-C
- (nonnull RLMRealmConfiguration *) flexibleSyncConfigurationWithInitialSubscriptions: (nonnull RLMFlexibleSyncInitialSubscriptionsBlock)initialSubscriptions rerunOnOpen:(BOOL)rerunOnOpen clientResetMode: (RLMClientResetMode)clientResetMode manualClientResetHandler: (nullable RLMSyncErrorReportingBlock) manualClientResetHandler;
パラメーター
initialSubscriptions
サブスクリプションセット インスタンスを受け取るブロック。Realm が最初に開かれたときに実行されるサブスクリプションの初期セットを追加するために使用できます。
rerunOnOpen
true の場合、 はアプリを起動するたびに、指定されたサブスクリプションの初期セットを実行できるようにします。 これは、 動的時間範囲 や静的変数の再計算を必要とするその他のクエリの再実行に使用できます。
clientResetMode
クライアントがリセットした場合のファイル回復動作を決定します。 次を参照してください: https://mongodb.com/java-j/docs/realm/sync/error-handing/client-reset/
manualClientResetHandler
クライアントのリセット中に呼び出されるエラー報告ブロック。 @
RLMSyncErrorReportingBlock
とRLMClientResetInfo
を参照戻り値
柔軟な同期構成を持つ
RLMRealmConfiguration
インスタンス。
-
指定された URL に対してこのユーザーに属する有効なセッション オブジェクトを取得します。そのようなオブジェクトが存在しない場合は
nil
を取得します。宣言
Objective-C
- (nullable RLMSyncSession *)sessionForPartitionValue: (nonnull id<RLMBSON>)partitionValue;
Swift
func session(forPartitionValue partitionValue: any RLMBSON) -> RLMSyncSession?
-
このユーザーに属するすべての有効なセッションを取得します。
宣言
Objective-C
@property (nonatomic, readonly) NSArray<RLMSyncSession *> *_Nonnull allSessions;
Swift
var allSessions: [RLMSyncSession] { get }
-
ユーザーのカスタム データ。 これは、Atlas App Services アプリで構成されます。
宣言
Objective-C
@property (nonatomic, readonly) NS_REFINED_FOR_SWIFT NSDictionary *customData;
-
ユーザーのプロファイル。
宣言
Objective-C
@property (nonatomic, readonly) RLMUserProfile *_Nonnull profile;
Swift
var profile: RLMUserProfile { get }
-
ユーザーのカスタム データを更新します。 これにより、ユーザーの認証セッションが更新されます。
宣言
Objective-C
- (void)refreshCustomDataWithCompletion: (nonnull RLMUserCustomDataBlock)completion;
-
現在認証されているユーザーを新しい ID にリンクします。ID は、パラメータとして指定された認証情報によって定義されます。 これは、この
RLMUser
が、作成されたクライアントで現在認証されている場合にのみ成功します。 成功すると、新しいリンクされた認証情報を持つ新しいユーザーが返されます。宣言
Objective-C
- (void)linkUserWithCredentials:(nonnull RLMCredentials *)credentials completion:(nonnull RLMOptionalUserBlock)completion;
パラメーター
credentials
ユーザーを新しい ID にリンクするために使用される
RLMCredentials
。completion
リンクが完了したときに呼び出す完了ハンドラー。 操作が成功した場合、結果には現在ログインしているユーザーを表す新しい
RLMUser
オブジェクトが含まれます。 -
ユーザーを削除します
これにより、このユーザーに関連するセッションがログアウトされ、破棄されます。 ユーザーが見つからない場合、またはすでに削除されている場合、完了ブロックはエラーを返します。
宣言
Objective-C
- (void)removeWithCompletion:(nonnull RLMUserOptionalErrorBlock)completion;
Swift
func remove() async throws
パラメーター
completion
完了時に呼び出されるコールバック
-
は、Atlas App Services アプリからこのユーザーを完全に削除します。
ユーザー状態は
Removed
に設定され、セッションは破棄されます。 削除リクエストが失敗した場合、ローカル認証状態は復元されません。宣言
Objective-C
- (void)deleteWithCompletion:(nonnull RLMUserOptionalErrorBlock)completion;
Swift
func delete() async throws
パラメーター
completion
完了時に呼び出されるコールバック
-
現在のユーザーをログアウトする
ユーザー状態は、匿名ユーザーの場合は
Removed
、またはメール/パスワードまたはサードパーティ認証クライアントによって認証されている場合はLoggedOut
に設定されます。ログアウト リクエストが失敗した場合でも、このメソッドはローカル認証状態をクリアします。宣言
Objective-C
- (void)logOutWithCompletion:(nonnull RLMUserOptionalErrorBlock)completion;
Swift
func logOut() async throws
パラメーター
completion
完了時に呼び出されるコールバック
-
ユーザー API キー認証プロバイダーのクライアントで、ユーザー API キーの作成と変更に使用できます。
このクライアントは、認証されたユーザーのみが使用する必要があります。
宣言
Objective-C
@property (nonatomic, readonly) RLMAPIKeyAuth *_Nonnull apiKeysAuth;
Swift
var apiKeysAuth: RLMAPIKeyAuth { get }
-
MongoDB のリモート インスタンスを操作するためのクライアント
宣言
Objective-C
- (nonnull RLMMongoClient *)mongoClientWithServiceName: (nonnull NSString *)serviceName;
パラメーター
serviceName
MongoDB サービスの名前
-
指定された名前と引数で Atlas App Services 関数を呼び出します。
宣言
Objective-C
- (void)callFunctionNamed:(nonnull NSString *)name arguments:(nonnull NSArray<id<RLMBSON>> *)arguments completionBlock:(nonnull RLMCallFunctionCompletionBlock)completion;
パラメーター
name
呼び出される Atlas App Services 関数の名前。
arguments
関数に提供する引数の
BSONArray
。completion
関数の呼び出しが完了したときに呼び出す完了ハンドラー。 このハンドラーは非メインのグローバル
DispatchQueue
で実行されます。