RLMSyncSubscriptionSet
Objective-C
@interface RLMSyncSubscriptionSet : NSObject <NSFastEnumeration>
Swift
@_nonSendable(_assumed) class RLMSyncSubscriptionSet : NSObject, NSFastEnumeration
RLMSyncSubscriptionSet
是RLMSyncSubscription
的集合。 这是添加和删除RLMSyncSubscription
的入口点。
-
订阅集中的订阅数量。
声明
Objective-C
@property (readonly) NSUInteger count;
Swift
var count: UInt { get }
-
获取与订阅集关联的错误。 如果订阅集的当前状态为
RLMSyncSubscriptionStateError
,则该值不为零。声明
Objective-C
@property (nonatomic, readonly, nullable) NSError *error;
Swift
var error: (any Error)? { get }
-
获取与订阅设立关联的状态。
声明
Objective-C
@property (nonatomic, readonly) RLMSyncSubscriptionState state;
Swift
var state: RLMSyncSubscriptionState { get }
-
对区块内的订阅设立同步执行任何事务(添加/删除/更新),这不会等待服务器确认并查看与此订阅集合关联的所有数据,并将在提交订阅事务后返回。
声明
Objective-C
- (void)update:(nonnull void (^)(void))block;
Swift
func update(_ block: () -> Void)
参数
block
该区块包含要对订阅设立执行的操作。
-
对区块内的订阅设立同步执行任何事务(添加/删除/更新)。
onComplete
区块在等待从服务器下载关联数据后执行。声明
Objective-C
- (void)update:(nonnull void (^)(void))block onComplete:(nullable void (^)(NSError *_Nullable))onComplete;
Swift
@_unsafeInheritExecutor func update(_ block: () -> Void) async throws
参数
block
该区块包含要对订阅设立执行的操作。
onComplete
在同步来自服务器的数据时调用的区块。 如果更新成功,则向区块传递
nil
,否则向区块传递描述问题的错误。 -
对区块内的订阅设立同步执行任何事务(添加/删除/更新)。
onComplete
区块在等待从服务器下载关联数据后执行。声明
Objective-C
- (void)update:(nonnull void (^)(void))block queue:(nullable dispatch_queue_t)queue onComplete:(nonnull void (^)(NSError *_Nonnull))onComplete;
Swift
@_unsafeInheritExecutor func update(_ block: () -> Void, queue: dispatch_queue_t?, onComplete: @escaping (any Error) -> Void)
参数
block
该区块包含要对订阅设立执行的操作。
queue
要向其传递通知的串行队列。
onComplete
在同步来自服务器的数据时调用的区块。 如果更新成功,则向区块传递
nil
,否则向区块传递描述问题的错误。
-
按指定名称查找订阅。
声明
Objective-C
- (nullable RLMSyncSubscription *)subscriptionWithName:(nonnull NSString *)name;
Swift
func subscription(withName name: String) -> RLMSyncSubscription?
参数
name
用于标识订阅的名称。
返回值
给定名称的订阅。
-
通过查询查找指定对象类名称的订阅。
声明
Objective-C
- (nullable RLMSyncSubscription *) subscriptionWithClassName:(nonnull NSString *)objectClassName where:(nonnull NSString *)predicateFormat, ...;
参数
objectClassName
要查询的模型类的类名。
predicateFormat
谓词格式字符串,可以选择后跟可变数量的参数。
返回值
给定查询的订阅..
-
通过查询查找指定对象类名称的订阅。
声明
Objective-C
- (nullable RLMSyncSubscription *) subscriptionWithClassName:(nonnull NSString *)objectClassName predicate:(nonnull NSPredicate *)predicate;
Swift
func subscription(withClassName objectClassName: String, predicate: NSPredicate) -> RLMSyncSubscription?
参数
objectClassName
要查询的模型类的类名。
predicate
用于过滤服务器上对象的谓词。
返回值
给定查询的订阅..
-
将新订阅添加到订阅设立,在写入订阅区块末尾提交时,该订阅将被发送到服务器。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)addSubscriptionWithClassName:(nonnull NSString *)objectClassName where:(nonnull NSString *)predicateFormat, ...;
参数
objectClassName
要查询的模型类的类名。
predicateFormat
谓词格式字符串,可以选择后跟可变数量的参数。
-
将新订阅添加到订阅设立,在写入订阅区块末尾提交时,该订阅将被发送到服务器。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)addSubscriptionWithClassName:(nonnull NSString *)objectClassName subscriptionName:(nonnull NSString *)name where:(nonnull NSString *)predicateFormat, ...;
参数
objectClassName
要查询的模型类的类名。
name
用于标识订阅的名称。
predicateFormat
谓词格式字符串,可以选择后跟可变数量的参数。
-
将新订阅添加到订阅设立,在写入订阅区块末尾提交时,该订阅将被发送到服务器。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)addSubscriptionWithClassName:(nonnull NSString *)objectClassName predicate:(nonnull NSPredicate *)predicate;
Swift
func addSubscription(withClassName objectClassName: String, predicate: NSPredicate)
参数
objectClassName
要查询的模型类的类名。
predicate
定义订阅查询的谓词。
-
将新订阅添加到订阅设立,在写入订阅区块末尾提交时,该订阅将被发送到服务器。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)addSubscriptionWithClassName:(nonnull NSString *)objectClassName subscriptionName:(nullable NSString *)name predicate:(nonnull NSPredicate *)predicate;
Swift
func addSubscription(withClassName objectClassName: String, subscriptionName name: String?, predicate: NSPredicate)
参数
objectClassName
要查询的模型类的类名。
name
用于标识订阅的名称。
predicate
定义订阅查询的谓词。
-
从订阅集中删除具有指定名称的订阅。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)removeSubscriptionWithName:(nonnull NSString *)name;
Swift
func removeSubscription(withName name: String)
参数
name
用于标识订阅的名称。
-
从订阅集中删除对象类的具有指定查询的订阅。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)removeSubscriptionWithClassName:(nonnull NSString *)objectClassName where:(nonnull NSString *)predicateFormat, ...;
参数
objectClassName
要查询的模型类的类名。
predicateFormat
谓词格式字符串,可以选择后跟可变数量的参数。
-
从订阅集中删除对象类的具有指定查询的订阅。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)removeSubscriptionWithClassName:(nonnull NSString *)objectClassName predicate:(nonnull NSPredicate *)predicate;
Swift
func removeSubscription(withClassName objectClassName: String, predicate: NSPredicate)
参数
objectClassName
要查询的模型类的类名。
predicate
用于识别要删除的订阅的谓词。
-
从订阅设立删除订阅。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)removeSubscription:(nonnull RLMSyncSubscription *)subscription;
Swift
func remove(_ subscription: RLMSyncSubscription)
参数
subscription
要删除的订阅实例。
-
从订阅集中删除所有订阅。
警告
此方法只能在写入订阅区块期间调用。警告
如果没有添加新订阅,则删除所有订阅将导致错误。 服务器应至少确认一个订阅。声明
Objective-C
- (void)removeAllSubscriptions;
Swift
func removeAllSubscriptions()
-
从订阅设立删除所有没有名称的订阅。
警告
此方法只能在写入订阅区块期间调用。警告
如果没有添加新订阅,则删除所有订阅将导致错误。 服务器应至少确认一个订阅。声明
Objective-C
- (void)removeAllUnnamedSubscriptions;
Swift
func removeAllUnnamedSubscriptions()
-
删除具有指定类名的所有订阅。
警告
此方法只能在写入订阅区块期间调用。
声明
Objective-C
- (void)removeAllSubscriptionsWithClassName:(nonnull NSString *)className;
Swift
func removeAllSubscriptions(withClassName className: String)
参数
className
要查询的模型类的类名。
-
返回给定
index
处的订阅。声明
Objective-C
- (nullable RLMSyncSubscription *)objectAtIndex:(NSUInteger)index;
Swift
func object(at index: UInt) -> RLMSyncSubscription?
参数
index
索引。
返回值
对订阅集中给定索引的订阅。
-
返回订阅设立列表中的第一个对象,如果订阅为空,则返回
nil
。声明
Objective-C
- (nullable RLMSyncSubscription *)firstObject;
Swift
func firstObject() -> RLMSyncSubscription?
返回值
订阅。
-
返回订阅设立的最后一个对象,如果订阅为空,则返回
nil
。声明
Objective-C
- (nullable RLMSyncSubscription *)lastObject;
Swift
func lastObject() -> RLMSyncSubscription?
返回值
订阅。
-
返回给定
index
处的订阅。声明
Objective-C
- (nonnull id)objectAtIndexedSubscript:(NSUInteger)index;
Swift
subscript(index: UInt) -> Any { get }
参数
index
索引。
返回值
对订阅集中给定索引的订阅。