DBRpcTask
Objective-C
@interface DBRpcTask<TResponse, TError> : DBTask
Swift
class DBRpcTask<TResponse, TError> : DBTask where TResponse : AnyObject, TError : AnyObject
Dropbox RPC-style Network Task.
After an RPC network request is made via DBTransportClient
, a subclass of DBRpcTask
is returned, from which
response and progress handlers can be installed, and the network response paused or cancelled.
TResponse
is the generic representation of the route-specific result, and TError
is the generic representation
of the route-specific error.
Response / error deserialization is performed with this class.
-
Installs a response handler for the current request.
Executes handler on main queue/thread.
Note
Any existing handlers are replaced by the supplied handler.
Declaration
Objective-C
- (nonnull DBRpcTask<TResponse, TError> *)setResponseBlock: (nonnull DBRpcResponseBlock)responseBlock;
Swift
func setResponseBlock(_ responseBlock: @escaping DBRpcResponseBlock) -> DBRpcTask<TResponse, TError>
Parameters
responseBlock
The handler block to be executed in the event of a successful or unsuccessful network request. The first argument is the route-specific result. The second argument is the route-specific error. And the third argument is the more general network error (which includes information like Dropbox request ID, http status code, etc.).
Return Value
The current
DBRpcTask
instance. -
Installs a response handler for the current request with a specific queue on which to execute handler code.
Executes handler on supplied queue/thread.
Note
Any existing handlers are replaced by the supplied handler.
Declaration
Objective-C
- (nonnull DBRpcTask<TResponse, TError> *) setResponseBlock:(nonnull DBRpcResponseBlock)responseBlock queue:(nullable NSOperationQueue *)queue;
Swift
func setResponseBlock(_ responseBlock: @escaping DBRpcResponseBlock, queue: OperationQueue?) -> DBRpcTask<TResponse, TError>
Parameters
responseBlock
The handler block to be executed in the event of a successful or unsuccessful network request. The first argument is the route-specific result. The second argument is the route-specific error. And the third argument is the more general network error (which includes information like Dropbox request ID, http status code, etc.).
queue
The operation queue on which to execute the response.
Return Value
The current
DBRpcTask
instance. -
Installs a progress handler for the current request.
Executes handler on main queue/thread.
Note
Any existing handlers are replaced by the supplied handler.
Declaration
Objective-C
- (nonnull DBRpcTask *)setProgressBlock:(nonnull DBProgressBlock)progressBlock;
Swift
func setProgressBlock(_ progressBlock: @escaping DBProgressBlock) -> DBRpcTask<AnyObject, AnyObject>
Parameters
progressBlock
The progress block to be executed in the event of a request update. The first argument is the number of bytes sent. The second argument is the number of total bytes sent. And the third argument is the number of total bytes expected to be sent.
Return Value
The current
DBRpcTask
instance. -
Installs a progress handler for the current request.
Executes handler on supplied queue/thread.
Note
Any existing handlers are replaced by the supplied handler.
Declaration
Objective-C
- (nonnull DBRpcTask *)setProgressBlock:(nonnull DBProgressBlock)progressBlock queue:(nullable NSOperationQueue *)queue;
Swift
func setProgressBlock(_ progressBlock: @escaping DBProgressBlock, queue: OperationQueue?) -> DBRpcTask<AnyObject, AnyObject>
Parameters
progressBlock
The progress block to be executed in the event of a request update. The first argument is the number of bytes sent. The second argument is the number of total bytes sent. And the third argument is the number of total bytes expected to be sent.
queue
The operation queue on which to execute the response.
Return Value
The current
DBRpcTask
instance.