![]() |
Diffusion Apple API 6.11.5
Unified Client Library for iOS, tvOS and OS X / macOS
|
An update stream that provides the ability for updating topics with string primitive values.
Properties | |
NSString * | value |
![]() | |
ObjectType | value |
Instance Methods | |
(BOOL) | - setValue:completionHandler:error: |
![]() | |
(BOOL) | - validateWithCompletionHandler:error: |
(BOOL) | - setValue:completionHandler:error: |
Additional Inherited Members | |
![]() | |
: NSObject+(instancetype)new | |
- (BOOL) setValue: | (nullable NSString *) | value | |
completionHandler: | (PTDiffusionUpdateStreamHandlerBlock) | completionHandler | |
error: | (NSError **) | error | |
Sets the topic to a specified value or no value.
When a nil
value is supplied to this method for a PTDiffusionTopicType_String topic, the topic will be updated to have no value. If a previous value was present subscribers will receive a notification that the new value is null. New subscribers will not receive a value notification.
The first call to this method may fail with a "no such topic" or "incompatible topic" error. Subsequent calls may fail with "invalid update stream". Any call can fail with a "cluster repartition", "session security" or "session closed" error.
If a PTDiffusionUpdateConstraint was provided when creating the update stream, the first call to this method may also fail with an "unsatisified constraint" error.
If the update stream was created with one of the "create update stream" methods, the first call to this method may also fail with an "incompatible existing topic" error and it will not fail with a "no such topic" error.
If this method fails all subsequent calls to 'set' or 'validate' will fail with an "invalid update stream" error.
If the task fails, the completionHandler will be called with an error. Common reasons for failure include:
path
.constraint
is not satisfied by the topic path
.path
is not a valid topic path.MODIFY_TOPIC
or UPDATE_TOPIC
permission for path
.value | The value to set the topic to. |
completionHandler | Block to be called asynchronously on success or failure. If the operation was successful, the error argument passed to the block will be nil and result will be non-nil . The completion handler will be called asynchronously on the main dispatch queue. |
error | If this method returns NO to indicate that an error occurred then this will be populated with the reason for that failure. |
YES
on success; or NO
if an error occurred, in which case *error
will be populated with the failure reason.NSInvalidArgumentException | If completionHandler is `nil`. |
|
readnonatomicassign |
The latest value of the topic set using this update stream, from local cache.
This value reflects the last value that has been set, before it is sent to the server.
If the server rejects a set operation, the topic value will not change and this update stream will be invalidated.