-
A collection of options to be executed prior to moving a downloaded file from the temporary URL to the destination URL.
See moreDeclaration
Swift
public struct DownloadOptions: OptionSet -
A closure executed once a download request has successfully completed in order to determine where to move the temporary file written to during the download process. The closure takes two arguments: the temporary file URL and the URL response, and returns a two arguments: the file URL where the temporary file should be moved and the options defining how the file should be moved.
Declaration
Swift
public typealias DownloadFileDestination = (
-
The request sent or to be sent to the server.
Declaration
Swift
open override var request: URLRequest? -
The resume data of the underlying download task if available after a failure.
Declaration
Swift
open var resumeData: Data? -
The progress of downloading the response data from the server for the request.
Declaration
Swift
open var progress: Progress
-
Sets a closure to be called periodically during the lifecycle of the
Requestas data is read from the server.Declaration
Swift
open func downloadProgress(queue: DispatchQueue = DispatchQueue.main, closure: @escaping ProgressHandler) -> SelfParameters
queueThe dispatch queue to execute the closure on.
closureThe code to be executed periodically as data is read from the server.
Return Value
The request.
-
Creates a download file destination closure which uses the default file manager to move the temporary file to a file URL in the first available directory with the specified search path directory and search path domain mask.
Declaration
Swift
open class func suggestedDownloadDestination( for directory: FileManager.SearchPathDirectory = .documentDirectory, in domain: FileManager.SearchPathDomainMask = .userDomainMask) -> DownloadFileDestinationParameters
directoryThe search path directory.
.DocumentDirectoryby default.domainThe search path domain mask.
.UserDomainMaskby default.Return Value
A download file destination closure.
-
Adds a handler to be called once the request has finished.
Declaration
Swift
public func response( queue: DispatchQueue? = nil, completionHandler: @escaping (DefaultDownloadResponse) -> Void) -> SelfParameters
queueThe queue on which the completion handler is dispatched.
completionHandlerThe code to be executed once the request has finished.
Return Value
The request.
-
Adds a handler to be called once the request has finished.
Declaration
Swift
public func response<T: DownloadResponseSerializerProtocol>( queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DownloadResponse<T.SerializedObject>) -> Void) -> SelfParameters
queueThe queue on which the completion handler is dispatched.
responseSerializerThe response serializer responsible for serializing the request, response, and data contained in the destination url.
completionHandlerThe code to be executed once the request has finished.
Return Value
The request.
-
Creates a response serializer that returns the associated data as-is.
Declaration
Swift
public static func dataResponseSerializer() -> DownloadResponseSerializer<Data>Return Value
A data response serializer.
-
Adds a handler to be called once the request has finished.
Declaration
Swift
public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DownloadResponse<Data>) -> Void) -> SelfParameters
completionHandlerThe code to be executed once the request has finished.
Return Value
The request.
-
Creates a response serializer that returns a result string type initialized from the response data with the specified string encoding.
Declaration
Swift
public static func stringResponseSerializer(encoding: String.Encoding? = nil) -> DownloadResponseSerializer<String>Parameters
encodingThe string encoding. If
nil, the string encoding will be determined from the server response, falling back to the default HTTP default character set, ISO-8859-1.Return Value
A string response serializer.
-
Adds a handler to be called once the request has finished.
Declaration
Swift
public func responseString( queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DownloadResponse<String>) -> Void) -> SelfParameters
encodingThe string encoding. If
nil, the string encoding will be determined from the server response, falling back to the default HTTP default character set, ISO-8859-1.completionHandlerA closure to be executed once the request has finished.
Return Value
The request.
-
Creates a response serializer that returns a JSON object result type constructed from the response data using
JSONSerializationwith the specified reading options.Declaration
Swift
public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) -> DownloadResponseSerializer<Any>Parameters
optionsThe JSON serialization reading options. Defaults to
.allowFragments.Return Value
A JSON object response serializer.
-
Adds a handler to be called once the request has finished.
Declaration
Swift
public func responseJSON( queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DownloadResponse<Any>) -> Void) -> SelfParameters
optionsThe JSON serialization reading options. Defaults to
.allowFragments.completionHandlerA closure to be executed once the request has finished.
Return Value
The request.
-
Creates a response serializer that returns an object constructed from the response data using
PropertyListSerializationwith the specified reading options.Declaration
Swift
public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) -> DownloadResponseSerializer<Any>Parameters
optionsThe property list reading options. Defaults to
[].Return Value
A property list object response serializer.
-
Adds a handler to be called once the request has finished.
Declaration
Swift
public func responsePropertyList( queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DownloadResponse<Any>) -> Void) -> SelfParameters
optionsThe property list reading options. Defaults to
[].completionHandlerA closure to be executed once the request has finished.
Return Value
The request.
-
A closure used to validate a request that takes a URL request, a URL response, a temporary URL and a destination URL, and returns whether the request was valid.
Declaration
Swift
public typealias Validation = ( -
Validates the request, using the specified closure.
If validation fails, subsequent calls to response handlers will have an associated error.
Declaration
Swift
public func validate(_ validation: @escaping Validation) -> SelfParameters
validationA closure to validate the request.
Return Value
The request.
-
Validates that the response has a status code in the specified sequence.
If validation fails, subsequent calls to response handlers will have an associated error.
Declaration
Swift
public func validate<S: Sequence>(statusCode acceptableStatusCodes: S) -> Self where S.Iterator.Element == IntParameters
rangeThe range of acceptable status codes.
Return Value
The request.
-
Validates that the response has a content type in the specified sequence.
If validation fails, subsequent calls to response handlers will have an associated error.
Declaration
Swift
public func validate<S: Sequence>(contentType acceptableContentTypes: S) -> Self where S.Iterator.Element == StringParameters
contentTypeThe acceptable content types, which may specify wildcard types and/or subtypes.
Return Value
The request.
-
Validates that the response has a status code in the default acceptable range of 200…299, and that the content type matches any specified in the Accept HTTP header field.
If validation fails, subsequent calls to response handlers will have an associated error.
Declaration
Swift
public func validate() -> SelfReturn Value
The request.
View on GitHub
Install in Dash
DownloadRequest Class Reference