![]() |
Diffusion Apple API 6.12.0
Unified Client Library for iOS, tvOS and OS X / macOS
|
This feature provides a client session with the ability to change its associated principal as well as to query permissions assigned to it.
The Security feature for a session can be obtained from the session's security property.
Instance Methods | |
| (void) | - changePrincipal:credentials:completionHandler: |
| (bool) | - reauthenticate:credentials:sessionProperties:completionHandler:error: |
| (void) | - getGlobalPermissionsWithCompletionHandler: |
| (void) | - getTopicPermissionsForPath:completionHandler: |
Additional Inherited Members | |
Properties inherited from PTDiffusionFeature | |
| PTDiffusionSession * | session |
| - (void) changePrincipal: | (nullable NSString *) | principal | |
| credentials: | (nullable PTDiffusionCredentials *) | credentials | |
| completionHandler: | (void(^)(NSError *_Nullable error)) | completionHandler | |
Change the security principal associated with the current session.
If authentication fails, the current principal will remain valid.
| principal | The new principal name. |
| credentials | The credentials authenticating the new principal. |
| 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. The completion handler will be called asynchronously on the main dispatch queue. |
| NSInvalidArgumentException | Raised if the completionHandler argument is nil. |
| - (void) getGlobalPermissionsWithCompletionHandler: | (void(^)(NSSet< PTDiffusionGlobalPermission * > *_Nullable permissions, NSError *_Nullable error)) | completionHandler |
Query the global permissions assigned to the calling session.
| 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. The completion handler will be called asynchronously on the main dispatch queue. |
| - (void) getTopicPermissionsForPath: | (NSString *) | path | |
| completionHandler: | (void(^)(NSSet< PTDiffusionPathPermission * > *_Nullable permissions, NSError *_Nullable error)) | completionHandler | |
Query the topic permissions assigned to the calling session on a given path.
| path | the path to query for permissions |
| 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. The completion handler will be called asynchronously on the main dispatch queue. |
| - (bool) reauthenticate: | (nullable NSString *) | principal | |
| credentials: | (nullable PTDiffusionCredentials *) | credentials | |
| sessionProperties: | (nullable NSDictionary< NSString *, NSString * > *) | sessionProperties | |
| completionHandler: | (void(^)(BOOL success, NSError *_Nullable error)) | completionHandler | |
| error: | (NSError *__autoreleasing *const) | error | |
Re-authenticate the session.
This may be used to change the principal for the session, or to re-authenticate the session before it expires.
A session may determine when it is due to expire by querying the value of the $ExpiryTime session property using PTDiffusionSession#getSessionProperties.
If this property is not present the session will not expire and there is no need to re-authenticate unless the principal in use is to be changed.
| principal | The new principal name. |
| credentials | The credentials authenticating the new principal. |
| sesssionProperties | The user-defined session properties. |
| 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. 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.