| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <title>RequestRetrier Protocol Reference</title>
- <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
- <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
- <meta charset="utf-8">
- <script src="../js/jquery.min.js" defer></script>
- <script src="../js/jazzy.js" defer></script>
-
- <script src="../js/lunr.min.js" defer></script>
- <script src="../js/typeahead.jquery.js" defer></script>
- <script src="../js/jazzy.search.js" defer></script>
- </head>
- <body>
- <a name="//apple_ref/swift/Protocol/RequestRetrier" class="dashAnchor"></a>
- <a title="RequestRetrier Protocol Reference"></a>
- <header class="header">
- <p class="header-col header-col--primary">
- <a class="header-link" href="../index.html">
- Alamofire Docs
- </a>
- (87% documented)
- </p>
-
- <p class="header-col--secondary">
- <form role="search" action="../search.json">
- <input type="text" placeholder="Search documentation" data-typeahead>
- </form>
- </p>
-
- <p class="header-col header-col--secondary">
- <a class="header-link" href="https://github.com/Alamofire/Alamofire">
- <img class="header-icon" src="../img/gh.png"/>
- View on GitHub
- </a>
- </p>
-
- <p class="header-col header-col--secondary">
- <a class="header-link" href="dash-feed://https%3A%2F%2Falamofire%2Egithub%2Eio%2FAlamofire%2Fdocsets%2FAlamofire%2Exml">
- <img class="header-icon" src="../img/dash.png"/>
- Install in Dash
- </a>
- </p>
- </header>
- <p class="breadcrumbs">
- <a class="breadcrumb" href="../index.html">Alamofire Reference</a>
- <img class="carat" src="../img/carat.png" />
- RequestRetrier Protocol Reference
- </p>
- <div class="content-wrapper">
- <nav class="navigation">
- <ul class="nav-groups">
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Classes.html">Classes</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/DataRequest.html">DataRequest</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/DownloadRequest.html">DownloadRequest</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/DownloadRequest/DownloadOptions.html">– DownloadOptions</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/MultipartFormData.html">MultipartFormData</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/NetworkReachabilityStatus.html">– NetworkReachabilityStatus</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/ConnectionType.html">– ConnectionType</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/Request.html">Request</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/Request/ValidationResult.html">– ValidationResult</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/ServerTrustPolicyManager.html">ServerTrustPolicyManager</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/SessionDelegate.html">SessionDelegate</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/SessionManager.html">SessionManager</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/SessionManager/MultipartFormDataEncodingResult.html">– MultipartFormDataEncodingResult</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/TaskDelegate.html">TaskDelegate</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Classes/UploadRequest.html">UploadRequest</a>
- </li>
- </ul>
- </li>
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Enums.html">Enumerations</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/AFError.html">AFError</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/AFError/ParameterEncodingFailureReason.html">– ParameterEncodingFailureReason</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/AFError/MultipartEncodingFailureReason.html">– MultipartEncodingFailureReason</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/AFError/ResponseValidationFailureReason.html">– ResponseValidationFailureReason</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/AFError/ResponseSerializationFailureReason.html">– ResponseSerializationFailureReason</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/HTTPMethod.html">HTTPMethod</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/Result.html">Result</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Enums/ServerTrustPolicy.html">ServerTrustPolicy</a>
- </li>
- </ul>
- </li>
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Extensions.html">Extensions</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/Notification.html">Notification</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/Notification/Name.html">– Name</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/Notification/Key.html">– Key</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/String.html">String</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/URL.html">URL</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/URLComponents.html">URLComponents</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Extensions/URLRequest.html">URLRequest</a>
- </li>
- </ul>
- </li>
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Functions.html">Functions</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire2eeoiSbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF">==(_:_:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headers10Foundation3URLV011destinationO0_AD0C7OptionsV7optionstAU_So15HTTPURLResponseCtcSg2totF">download(_:method:parameters:encoding:headers:to:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationH0_AD0C7OptionsV7optionstAH_So15HTTPURLResponseCtcSg2totF">download(_:to:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AE3URLV011destinationI0_AD0C7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF">download(resumingWith:to:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire7requestAA11DataRequestCAA21URLRequestConvertible_pF">request(_:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headerstF">request(_:method:parameters:encoding:headers:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6streamAA13StreamRequestCSo10NetServiceC4with_tF">stream(with:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6streamAA13StreamRequestCSS12withHostName_Si4porttF">stream(withHostName:port:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:with:encodingCompletion:)</a>
- </li>
- </ul>
- </li>
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Protocols.html">Protocols</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/ParameterEncoding.html">ParameterEncoding</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/RequestAdapter.html">RequestAdapter</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/RequestRetrier.html">RequestRetrier</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/URLConvertible.html">URLConvertible</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Protocols/URLRequestConvertible.html">URLRequestConvertible</a>
- </li>
- </ul>
- </li>
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Structs.html">Structures</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/DataResponse.html">DataResponse</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/DataResponseSerializer.html">DataResponseSerializer</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/DefaultDataResponse.html">DefaultDataResponse</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/DefaultDownloadResponse.html">DefaultDownloadResponse</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/DownloadResponse.html">DownloadResponse</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/DownloadResponseSerializer.html">DownloadResponseSerializer</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/JSONEncoding.html">JSONEncoding</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/PropertyListEncoding.html">PropertyListEncoding</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/Timeline.html">Timeline</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/URLEncoding.html">URLEncoding</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Structs/URLEncoding/Destination.html">– Destination</a>
- </li>
- </ul>
- </li>
- <li class="nav-group-name">
- <a class="nav-group-name-link" href="../Typealiases.html">Type Aliases</a>
- <ul class="nav-group-tasks">
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a>
- </li>
- <li class="nav-group-task">
- <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire22RequestRetryCompletiona">RequestRetryCompletion</a>
- </li>
- </ul>
- </li>
- </ul>
- </nav>
- <article class="main-content">
- <section class="section">
- <div class="section-content">
- <h1>RequestRetrier</h1>
- <div class="declaration">
- <div class="language">
- <pre class="highlight"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">RequestRetrier</span></code></pre>
- </div>
- </div>
- <p>A type that determines whether a request should be retried after being executed by the specified session manager
- and encountering an error.</p>
- </div>
- </section>
- <section class="section">
- <div class="section-content">
- <div class="task-group">
- <ul class="item-container">
- <li class="item">
- <div>
- <code>
- <a name="/s:9Alamofire14RequestRetrierP6shouldyAA14SessionManagerC_AA0B0C5retrys5Error_p4withySb_Sdtc10completiontF"></a>
- <a name="//apple_ref/swift/Method/should(_:retry:with:completion:)" class="dashAnchor"></a>
- <a class="token" href="#/s:9Alamofire14RequestRetrierP6shouldyAA14SessionManagerC_AA0B0C5retrys5Error_p4withySb_Sdtc10completiontF">should(_:retry:with:completion:)</a>
- </code>
- </div>
- <div class="height-container">
- <div class="pointer-container"></div>
- <section class="section">
- <div class="pointer"></div>
- <div class="abstract">
- <p>Determines whether the <code><a href="../Classes/Request.html">Request</a></code> should be retried by calling the <code>completion</code> closure.</p>
- <p>This operation is fully asynchronous. Any amount of time can be taken to determine whether the request needs
- to be retried. The one requirement is that the completion closure is called to ensure the request is properly
- cleaned up after.</p>
- </div>
- <div class="declaration">
- <h4>Declaration</h4>
- <div class="language">
- <p class="aside-title">Swift</p>
- <pre class="highlight"><code><span class="kd">func</span> <span class="nf">should</span><span class="p">(</span><span class="n">_</span> <span class="nv">manager</span><span class="p">:</span> <span class="kt"><a href="../Classes/SessionManager.html">SessionManager</a></span><span class="p">,</span> <span class="n">retry</span> <span class="nv">request</span><span class="p">:</span> <span class="kt"><a href="../Classes/Request.html">Request</a></span><span class="p">,</span> <span class="n">with</span> <span class="nv">error</span><span class="p">:</span> <span class="kt">Error</span><span class="p">,</span> <span class="nv">completion</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="kt"><a href="../Typealiases.html#/s:9Alamofire22RequestRetryCompletiona">RequestRetryCompletion</a></span><span class="p">)</span></code></pre>
- </div>
- </div>
- <div>
- <h4>Parameters</h4>
- <table class="graybox">
- <tbody>
- <tr>
- <td>
- <code>
- <em>manager</em>
- </code>
- </td>
- <td>
- <div>
- <p>The session manager the request was executed on.</p>
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <code>
- <em>request</em>
- </code>
- </td>
- <td>
- <div>
- <p>The request that failed due to the encountered error.</p>
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <code>
- <em>error</em>
- </code>
- </td>
- <td>
- <div>
- <p>The error encountered when executing the request.</p>
- </div>
- </td>
- </tr>
- <tr>
- <td>
- <code>
- <em>completion</em>
- </code>
- </td>
- <td>
- <div>
- <p>The completion closure to be executed when retry decision has been determined.</p>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </section>
- </div>
- </li>
- </ul>
- </div>
- </div>
- </section>
- </article>
- </div>
- <section class="footer">
- <p>© 2017 <a class="link" href="http://alamofire.org/" target="_blank" rel="external">Alamofire Software Foundation</a>. All rights reserved. (Last updated: 2017-12-03)</p>
- <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
- </section>
- </body>
- </div>
- </html>
|