RetryPolicy.html 62 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>RetryPolicy Class Reference</title>
  5. <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
  6. <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
  7. <meta charset="utf-8">
  8. <script src="../js/jquery.min.js" defer></script>
  9. <script src="../js/jazzy.js" defer></script>
  10. <script src="../js/lunr.min.js" defer></script>
  11. <script src="../js/typeahead.jquery.js" defer></script>
  12. <script src="../js/jazzy.search.js" defer></script>
  13. </head>
  14. <body>
  15. <a name="//apple_ref/swift/Class/RetryPolicy" class="dashAnchor"></a>
  16. <a title="RetryPolicy Class Reference"></a>
  17. <header class="header">
  18. <p class="header-col header-col--primary">
  19. <a class="header-link" href="../index.html">
  20. Alamofire 5.7.1 Docs
  21. </a>
  22. (97% documented)
  23. </p>
  24. <div class="header-col--secondary">
  25. <form role="search" action="../search.json">
  26. <input type="text" placeholder="Search documentation" data-typeahead>
  27. </form>
  28. </div>
  29. <p class="header-col header-col--secondary">
  30. <a class="header-link" href="https://github.com/Alamofire/Alamofire">
  31. <img class="header-icon" src="../img/gh.png" alt="GitHub"/>
  32. View on GitHub
  33. </a>
  34. </p>
  35. <p class="header-col header-col--secondary">
  36. <a class="header-link" href="dash-feed://https%3A%2F%2Falamofire.github.io%2FAlamofire%2Fdocsets%2FAlamofire.xml">
  37. <img class="header-icon" src="../img/dash.png" alt="Dash"/>
  38. Install in Dash
  39. </a>
  40. </p>
  41. </header>
  42. <p class="breadcrumbs">
  43. <a class="breadcrumb" href="../index.html">Alamofire Reference</a>
  44. <img class="carat" src="../img/carat.png" alt=""/>
  45. RetryPolicy Class Reference
  46. </p>
  47. <div class="content-wrapper">
  48. <nav class="navigation">
  49. <ul class="nav-groups">
  50. <li class="nav-group-name">
  51. <a class="nav-group-name-link" href="../Classes.html">Classes</a>
  52. <ul class="nav-group-tasks">
  53. <li class="nav-group-task">
  54. <a class="nav-group-task-link" href="../Classes/Adapter.html">Adapter</a>
  55. </li>
  56. <li class="nav-group-task">
  57. <a class="nav-group-task-link" href="../Classes/AlamofireNotifications.html">AlamofireNotifications</a>
  58. </li>
  59. <li class="nav-group-task">
  60. <a class="nav-group-task-link" href="../Classes/AuthenticationInterceptor.html">AuthenticationInterceptor</a>
  61. </li>
  62. <li class="nav-group-task">
  63. <a class="nav-group-task-link" href="../Classes/AuthenticationInterceptor/RefreshWindow.html">– RefreshWindow</a>
  64. </li>
  65. <li class="nav-group-task">
  66. <a class="nav-group-task-link" href="../Classes/ClosureEventMonitor.html">ClosureEventMonitor</a>
  67. </li>
  68. <li class="nav-group-task">
  69. <a class="nav-group-task-link" href="../Classes/CompositeEventMonitor.html">CompositeEventMonitor</a>
  70. </li>
  71. <li class="nav-group-task">
  72. <a class="nav-group-task-link" href="../Classes/CompositeTrustEvaluator.html">CompositeTrustEvaluator</a>
  73. </li>
  74. <li class="nav-group-task">
  75. <a class="nav-group-task-link" href="../Classes/ConnectionLostRetryPolicy.html">ConnectionLostRetryPolicy</a>
  76. </li>
  77. <li class="nav-group-task">
  78. <a class="nav-group-task-link" href="../Classes/DataRequest.html">DataRequest</a>
  79. </li>
  80. <li class="nav-group-task">
  81. <a class="nav-group-task-link" href="../Classes/DataResponseSerializer.html">DataResponseSerializer</a>
  82. </li>
  83. <li class="nav-group-task">
  84. <a class="nav-group-task-link" href="../Classes/DataStreamRequest.html">DataStreamRequest</a>
  85. </li>
  86. <li class="nav-group-task">
  87. <a class="nav-group-task-link" href="../Classes/DataStreamRequest/Stream.html">– Stream</a>
  88. </li>
  89. <li class="nav-group-task">
  90. <a class="nav-group-task-link" href="../Classes/DataStreamRequest/Event.html">– Event</a>
  91. </li>
  92. <li class="nav-group-task">
  93. <a class="nav-group-task-link" href="../Classes/DataStreamRequest/Completion.html">– Completion</a>
  94. </li>
  95. <li class="nav-group-task">
  96. <a class="nav-group-task-link" href="../Classes/DataStreamRequest/CancellationToken.html">– CancellationToken</a>
  97. </li>
  98. <li class="nav-group-task">
  99. <a class="nav-group-task-link" href="../Classes/DecodableResponseSerializer.html">DecodableResponseSerializer</a>
  100. </li>
  101. <li class="nav-group-task">
  102. <a class="nav-group-task-link" href="../Classes/DefaultTrustEvaluator.html">DefaultTrustEvaluator</a>
  103. </li>
  104. <li class="nav-group-task">
  105. <a class="nav-group-task-link" href="../Classes/DisabledTrustEvaluator.html">DisabledTrustEvaluator</a>
  106. </li>
  107. <li class="nav-group-task">
  108. <a class="nav-group-task-link" href="../Classes/DownloadRequest.html">DownloadRequest</a>
  109. </li>
  110. <li class="nav-group-task">
  111. <a class="nav-group-task-link" href="../Classes/DownloadRequest/Options.html">– Options</a>
  112. </li>
  113. <li class="nav-group-task">
  114. <a class="nav-group-task-link" href="../Classes/DownloadRequest/Downloadable.html">– Downloadable</a>
  115. </li>
  116. <li class="nav-group-task">
  117. <a class="nav-group-task-link" href="../Classes/Interceptor.html">Interceptor</a>
  118. </li>
  119. <li class="nav-group-task">
  120. <a class="nav-group-task-link" href="../Classes/JSONParameterEncoder.html">JSONParameterEncoder</a>
  121. </li>
  122. <li class="nav-group-task">
  123. <a class="nav-group-task-link" href="../Classes/JSONResponseSerializer.html">JSONResponseSerializer</a>
  124. </li>
  125. <li class="nav-group-task">
  126. <a class="nav-group-task-link" href="../Classes/MultipartFormData.html">MultipartFormData</a>
  127. </li>
  128. <li class="nav-group-task">
  129. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a>
  130. </li>
  131. <li class="nav-group-task">
  132. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/NetworkReachabilityStatus.html">– NetworkReachabilityStatus</a>
  133. </li>
  134. <li class="nav-group-task">
  135. <a class="nav-group-task-link" href="../Classes/PinnedCertificatesTrustEvaluator.html">PinnedCertificatesTrustEvaluator</a>
  136. </li>
  137. <li class="nav-group-task">
  138. <a class="nav-group-task-link" href="../Classes/PublicKeysTrustEvaluator.html">PublicKeysTrustEvaluator</a>
  139. </li>
  140. <li class="nav-group-task">
  141. <a class="nav-group-task-link" href="../Classes/Request.html">Request</a>
  142. </li>
  143. <li class="nav-group-task">
  144. <a class="nav-group-task-link" href="../Classes/Request/State.html">– State</a>
  145. </li>
  146. <li class="nav-group-task">
  147. <a class="nav-group-task-link" href="../Classes/Retrier.html">Retrier</a>
  148. </li>
  149. <li class="nav-group-task">
  150. <a class="nav-group-task-link" href="../Classes/RetryPolicy.html">RetryPolicy</a>
  151. </li>
  152. <li class="nav-group-task">
  153. <a class="nav-group-task-link" href="../Classes/RevocationTrustEvaluator.html">RevocationTrustEvaluator</a>
  154. </li>
  155. <li class="nav-group-task">
  156. <a class="nav-group-task-link" href="../Classes/RevocationTrustEvaluator/Options.html">– Options</a>
  157. </li>
  158. <li class="nav-group-task">
  159. <a class="nav-group-task-link" href="../Classes/ServerTrustManager.html">ServerTrustManager</a>
  160. </li>
  161. <li class="nav-group-task">
  162. <a class="nav-group-task-link" href="../Classes/Session.html">Session</a>
  163. </li>
  164. <li class="nav-group-task">
  165. <a class="nav-group-task-link" href="../Classes/SessionDelegate.html">SessionDelegate</a>
  166. </li>
  167. <li class="nav-group-task">
  168. <a class="nav-group-task-link" href="../Classes/StringResponseSerializer.html">StringResponseSerializer</a>
  169. </li>
  170. <li class="nav-group-task">
  171. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder.html">URLEncodedFormEncoder</a>
  172. </li>
  173. <li class="nav-group-task">
  174. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/ArrayEncoding.html">– ArrayEncoding</a>
  175. </li>
  176. <li class="nav-group-task">
  177. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/BoolEncoding.html">– BoolEncoding</a>
  178. </li>
  179. <li class="nav-group-task">
  180. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/DataEncoding.html">– DataEncoding</a>
  181. </li>
  182. <li class="nav-group-task">
  183. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/DateEncoding.html">– DateEncoding</a>
  184. </li>
  185. <li class="nav-group-task">
  186. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/KeyEncoding.html">– KeyEncoding</a>
  187. </li>
  188. <li class="nav-group-task">
  189. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/KeyPathEncoding.html">– KeyPathEncoding</a>
  190. </li>
  191. <li class="nav-group-task">
  192. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/NilEncoding.html">– NilEncoding</a>
  193. </li>
  194. <li class="nav-group-task">
  195. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/SpaceEncoding.html">– SpaceEncoding</a>
  196. </li>
  197. <li class="nav-group-task">
  198. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/Error.html">– Error</a>
  199. </li>
  200. <li class="nav-group-task">
  201. <a class="nav-group-task-link" href="../Classes/URLEncodedFormParameterEncoder.html">URLEncodedFormParameterEncoder</a>
  202. </li>
  203. <li class="nav-group-task">
  204. <a class="nav-group-task-link" href="../Classes/URLEncodedFormParameterEncoder/Destination.html">– Destination</a>
  205. </li>
  206. <li class="nav-group-task">
  207. <a class="nav-group-task-link" href="../Classes/UploadRequest.html">UploadRequest</a>
  208. </li>
  209. <li class="nav-group-task">
  210. <a class="nav-group-task-link" href="../Classes/UploadRequest/Uploadable.html">– Uploadable</a>
  211. </li>
  212. </ul>
  213. </li>
  214. <li class="nav-group-name">
  215. <a class="nav-group-name-link" href="../Global%20Variables.html">Global Variables</a>
  216. <ul class="nav-group-tasks">
  217. <li class="nav-group-task">
  218. <a class="nav-group-task-link" href="../Global%20Variables.html#/s:9Alamofire2AFAA7SessionCvp">AF</a>
  219. </li>
  220. </ul>
  221. </li>
  222. <li class="nav-group-name">
  223. <a class="nav-group-name-link" href="../Enums.html">Enumerations</a>
  224. <ul class="nav-group-tasks">
  225. <li class="nav-group-task">
  226. <a class="nav-group-task-link" href="../Enums/AFError.html">AFError</a>
  227. </li>
  228. <li class="nav-group-task">
  229. <a class="nav-group-task-link" href="../Enums/AFError/MultipartEncodingFailureReason.html">– MultipartEncodingFailureReason</a>
  230. </li>
  231. <li class="nav-group-task">
  232. <a class="nav-group-task-link" href="../Enums/AFError/UnexpectedInputStreamLength.html">– UnexpectedInputStreamLength</a>
  233. </li>
  234. <li class="nav-group-task">
  235. <a class="nav-group-task-link" href="../Enums/AFError/ParameterEncodingFailureReason.html">– ParameterEncodingFailureReason</a>
  236. </li>
  237. <li class="nav-group-task">
  238. <a class="nav-group-task-link" href="../Enums/AFError/ParameterEncoderFailureReason.html">– ParameterEncoderFailureReason</a>
  239. </li>
  240. <li class="nav-group-task">
  241. <a class="nav-group-task-link" href="../Enums/AFError/ResponseValidationFailureReason.html">– ResponseValidationFailureReason</a>
  242. </li>
  243. <li class="nav-group-task">
  244. <a class="nav-group-task-link" href="../Enums/AFError/ResponseSerializationFailureReason.html">– ResponseSerializationFailureReason</a>
  245. </li>
  246. <li class="nav-group-task">
  247. <a class="nav-group-task-link" href="../Enums/AFError/ServerTrustFailureReason.html">– ServerTrustFailureReason</a>
  248. </li>
  249. <li class="nav-group-task">
  250. <a class="nav-group-task-link" href="../Enums/AFError/URLRequestValidationFailureReason.html">– URLRequestValidationFailureReason</a>
  251. </li>
  252. <li class="nav-group-task">
  253. <a class="nav-group-task-link" href="../Enums/AuthenticationError.html">AuthenticationError</a>
  254. </li>
  255. <li class="nav-group-task">
  256. <a class="nav-group-task-link" href="../Enums/RetryResult.html">RetryResult</a>
  257. </li>
  258. </ul>
  259. </li>
  260. <li class="nav-group-name">
  261. <a class="nav-group-name-link" href="../Extensions.html">Extensions</a>
  262. <ul class="nav-group-tasks">
  263. <li class="nav-group-task">
  264. <a class="nav-group-task-link" href="../Extensions/Array.html">Array</a>
  265. </li>
  266. <li class="nav-group-task">
  267. <a class="nav-group-task-link" href="../Extensions.html#/c:objc(cs)NSBundle">Bundle</a>
  268. </li>
  269. <li class="nav-group-task">
  270. <a class="nav-group-task-link" href="../Extensions/CharacterSet.html">CharacterSet</a>
  271. </li>
  272. <li class="nav-group-task">
  273. <a class="nav-group-task-link" href="../Extensions/Error.html">Error</a>
  274. </li>
  275. <li class="nav-group-task">
  276. <a class="nav-group-task-link" href="../Extensions/HTTPURLResponse.html">HTTPURLResponse</a>
  277. </li>
  278. <li class="nav-group-task">
  279. <a class="nav-group-task-link" href="../Extensions.html#/s:10Foundation11JSONDecoderC">JSONDecoder</a>
  280. </li>
  281. <li class="nav-group-task">
  282. <a class="nav-group-task-link" href="../Extensions/Notification.html">Notification</a>
  283. </li>
  284. <li class="nav-group-task">
  285. <a class="nav-group-task-link" href="../Extensions.html#/c:@T@OSStatus">OSStatus</a>
  286. </li>
  287. <li class="nav-group-task">
  288. <a class="nav-group-task-link" href="../Extensions.html#/s:10Foundation19PropertyListDecoderC">PropertyListDecoder</a>
  289. </li>
  290. <li class="nav-group-task">
  291. <a class="nav-group-task-link" href="../Extensions.html#/c:@T@SecCertificateRef">SecCertificate</a>
  292. </li>
  293. <li class="nav-group-task">
  294. <a class="nav-group-task-link" href="../Extensions.html#/c:@T@SecPolicyRef">SecPolicy</a>
  295. </li>
  296. <li class="nav-group-task">
  297. <a class="nav-group-task-link" href="../Extensions.html#/c:@T@SecTrustRef">SecTrust</a>
  298. </li>
  299. <li class="nav-group-task">
  300. <a class="nav-group-task-link" href="../Extensions.html#/c:@E@SecTrustResultType">SecTrustResultType</a>
  301. </li>
  302. <li class="nav-group-task">
  303. <a class="nav-group-task-link" href="../Extensions/String.html">String</a>
  304. </li>
  305. <li class="nav-group-task">
  306. <a class="nav-group-task-link" href="../Extensions/URL.html">URL</a>
  307. </li>
  308. <li class="nav-group-task">
  309. <a class="nav-group-task-link" href="../Extensions/URLComponents.html">URLComponents</a>
  310. </li>
  311. <li class="nav-group-task">
  312. <a class="nav-group-task-link" href="../Extensions/URLRequest.html">URLRequest</a>
  313. </li>
  314. <li class="nav-group-task">
  315. <a class="nav-group-task-link" href="../Extensions/URLSessionConfiguration.html">URLSessionConfiguration</a>
  316. </li>
  317. </ul>
  318. </li>
  319. <li class="nav-group-name">
  320. <a class="nav-group-name-link" href="../Protocols.html">Protocols</a>
  321. <ul class="nav-group-tasks">
  322. <li class="nav-group-task">
  323. <a class="nav-group-task-link" href="../Protocols/AlamofireExtended.html">AlamofireExtended</a>
  324. </li>
  325. <li class="nav-group-task">
  326. <a class="nav-group-task-link" href="../Protocols/AuthenticationCredential.html">AuthenticationCredential</a>
  327. </li>
  328. <li class="nav-group-task">
  329. <a class="nav-group-task-link" href="../Protocols/Authenticator.html">Authenticator</a>
  330. </li>
  331. <li class="nav-group-task">
  332. <a class="nav-group-task-link" href="../Protocols/CachedResponseHandler.html">CachedResponseHandler</a>
  333. </li>
  334. <li class="nav-group-task">
  335. <a class="nav-group-task-link" href="../Protocols/DataDecoder.html">DataDecoder</a>
  336. </li>
  337. <li class="nav-group-task">
  338. <a class="nav-group-task-link" href="../Protocols/DataPreprocessor.html">DataPreprocessor</a>
  339. </li>
  340. <li class="nav-group-task">
  341. <a class="nav-group-task-link" href="../Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a>
  342. </li>
  343. <li class="nav-group-task">
  344. <a class="nav-group-task-link" href="../Protocols/DataStreamSerializer.html">DataStreamSerializer</a>
  345. </li>
  346. <li class="nav-group-task">
  347. <a class="nav-group-task-link" href="../Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a>
  348. </li>
  349. <li class="nav-group-task">
  350. <a class="nav-group-task-link" href="../Protocols/EmptyResponse.html">EmptyResponse</a>
  351. </li>
  352. <li class="nav-group-task">
  353. <a class="nav-group-task-link" href="../Protocols/EventMonitor.html">EventMonitor</a>
  354. </li>
  355. <li class="nav-group-task">
  356. <a class="nav-group-task-link" href="../Protocols/ParameterEncoder.html">ParameterEncoder</a>
  357. </li>
  358. <li class="nav-group-task">
  359. <a class="nav-group-task-link" href="../Protocols/ParameterEncoding.html">ParameterEncoding</a>
  360. </li>
  361. <li class="nav-group-task">
  362. <a class="nav-group-task-link" href="../Protocols/RedirectHandler.html">RedirectHandler</a>
  363. </li>
  364. <li class="nav-group-task">
  365. <a class="nav-group-task-link" href="../Protocols/RequestAdapter.html">RequestAdapter</a>
  366. </li>
  367. <li class="nav-group-task">
  368. <a class="nav-group-task-link" href="../Protocols/RequestDelegate.html">RequestDelegate</a>
  369. </li>
  370. <li class="nav-group-task">
  371. <a class="nav-group-task-link" href="../Protocols/RequestInterceptor.html">RequestInterceptor</a>
  372. </li>
  373. <li class="nav-group-task">
  374. <a class="nav-group-task-link" href="../Protocols/RequestRetrier.html">RequestRetrier</a>
  375. </li>
  376. <li class="nav-group-task">
  377. <a class="nav-group-task-link" href="../Protocols/ResponseSerializer.html">ResponseSerializer</a>
  378. </li>
  379. <li class="nav-group-task">
  380. <a class="nav-group-task-link" href="../Protocols/ServerTrustEvaluating.html">ServerTrustEvaluating</a>
  381. </li>
  382. <li class="nav-group-task">
  383. <a class="nav-group-task-link" href="../Protocols/URLConvertible.html">URLConvertible</a>
  384. </li>
  385. <li class="nav-group-task">
  386. <a class="nav-group-task-link" href="../Protocols/URLRequestConvertible.html">URLRequestConvertible</a>
  387. </li>
  388. <li class="nav-group-task">
  389. <a class="nav-group-task-link" href="../Protocols.html#/s:9Alamofire17UploadConvertibleP">UploadConvertible</a>
  390. </li>
  391. <li class="nav-group-task">
  392. <a class="nav-group-task-link" href="../Protocols/UploadableConvertible.html">UploadableConvertible</a>
  393. </li>
  394. </ul>
  395. </li>
  396. <li class="nav-group-name">
  397. <a class="nav-group-name-link" href="../Structs.html">Structures</a>
  398. <ul class="nav-group-tasks">
  399. <li class="nav-group-task">
  400. <a class="nav-group-task-link" href="../Structs/AlamofireExtension.html">AlamofireExtension</a>
  401. </li>
  402. <li class="nav-group-task">
  403. <a class="nav-group-task-link" href="../Structs/DataResponse.html">DataResponse</a>
  404. </li>
  405. <li class="nav-group-task">
  406. <a class="nav-group-task-link" href="../Structs/DataResponsePublisher.html">DataResponsePublisher</a>
  407. </li>
  408. <li class="nav-group-task">
  409. <a class="nav-group-task-link" href="../Structs/DataStreamPublisher.html">DataStreamPublisher</a>
  410. </li>
  411. <li class="nav-group-task">
  412. <a class="nav-group-task-link" href="../Structs/DataStreamTask.html">DataStreamTask</a>
  413. </li>
  414. <li class="nav-group-task">
  415. <a class="nav-group-task-link" href="../Structs/DataTask.html">DataTask</a>
  416. </li>
  417. <li class="nav-group-task">
  418. <a class="nav-group-task-link" href="../Structs/DecodableStreamSerializer.html">DecodableStreamSerializer</a>
  419. </li>
  420. <li class="nav-group-task">
  421. <a class="nav-group-task-link" href="../Structs/DeflateRequestCompressor.html">DeflateRequestCompressor</a>
  422. </li>
  423. <li class="nav-group-task">
  424. <a class="nav-group-task-link" href="../Structs/DeflateRequestCompressor/DuplicateHeaderBehavior.html">– DuplicateHeaderBehavior</a>
  425. </li>
  426. <li class="nav-group-task">
  427. <a class="nav-group-task-link" href="../Structs/DeflateRequestCompressor.html#/s:9Alamofire24DeflateRequestCompressorV20DuplicateHeaderErrorV">– DuplicateHeaderError</a>
  428. </li>
  429. <li class="nav-group-task">
  430. <a class="nav-group-task-link" href="../Structs/DownloadResponse.html">DownloadResponse</a>
  431. </li>
  432. <li class="nav-group-task">
  433. <a class="nav-group-task-link" href="../Structs/DownloadResponsePublisher.html">DownloadResponsePublisher</a>
  434. </li>
  435. <li class="nav-group-task">
  436. <a class="nav-group-task-link" href="../Structs/DownloadTask.html">DownloadTask</a>
  437. </li>
  438. <li class="nav-group-task">
  439. <a class="nav-group-task-link" href="../Structs/Empty.html">Empty</a>
  440. </li>
  441. <li class="nav-group-task">
  442. <a class="nav-group-task-link" href="../Structs/GoogleXSSIPreprocessor.html">GoogleXSSIPreprocessor</a>
  443. </li>
  444. <li class="nav-group-task">
  445. <a class="nav-group-task-link" href="../Structs/HTTPHeader.html">HTTPHeader</a>
  446. </li>
  447. <li class="nav-group-task">
  448. <a class="nav-group-task-link" href="../Structs/HTTPHeaders.html">HTTPHeaders</a>
  449. </li>
  450. <li class="nav-group-task">
  451. <a class="nav-group-task-link" href="../Structs/HTTPMethod.html">HTTPMethod</a>
  452. </li>
  453. <li class="nav-group-task">
  454. <a class="nav-group-task-link" href="../Structs/JSONEncoding.html">JSONEncoding</a>
  455. </li>
  456. <li class="nav-group-task">
  457. <a class="nav-group-task-link" href="../Structs/JSONEncoding/Error.html">– Error</a>
  458. </li>
  459. <li class="nav-group-task">
  460. <a class="nav-group-task-link" href="../Structs/PassthroughPreprocessor.html">PassthroughPreprocessor</a>
  461. </li>
  462. <li class="nav-group-task">
  463. <a class="nav-group-task-link" href="../Structs/PassthroughStreamSerializer.html">PassthroughStreamSerializer</a>
  464. </li>
  465. <li class="nav-group-task">
  466. <a class="nav-group-task-link" href="../Structs/Redirector.html">Redirector</a>
  467. </li>
  468. <li class="nav-group-task">
  469. <a class="nav-group-task-link" href="../Structs/Redirector/Behavior.html">– Behavior</a>
  470. </li>
  471. <li class="nav-group-task">
  472. <a class="nav-group-task-link" href="../Structs/RequestAdapterState.html">RequestAdapterState</a>
  473. </li>
  474. <li class="nav-group-task">
  475. <a class="nav-group-task-link" href="../Structs/ResponseCacher.html">ResponseCacher</a>
  476. </li>
  477. <li class="nav-group-task">
  478. <a class="nav-group-task-link" href="../Structs/ResponseCacher/Behavior.html">– Behavior</a>
  479. </li>
  480. <li class="nav-group-task">
  481. <a class="nav-group-task-link" href="../Structs/StreamOf.html">StreamOf</a>
  482. </li>
  483. <li class="nav-group-task">
  484. <a class="nav-group-task-link" href="../Structs/StreamOf/Iterator.html">– Iterator</a>
  485. </li>
  486. <li class="nav-group-task">
  487. <a class="nav-group-task-link" href="../Structs/StringStreamSerializer.html">StringStreamSerializer</a>
  488. </li>
  489. <li class="nav-group-task">
  490. <a class="nav-group-task-link" href="../Structs/URLEncoding.html">URLEncoding</a>
  491. </li>
  492. <li class="nav-group-task">
  493. <a class="nav-group-task-link" href="../Structs/URLEncoding/Destination.html">– Destination</a>
  494. </li>
  495. <li class="nav-group-task">
  496. <a class="nav-group-task-link" href="../Structs/URLEncoding/ArrayEncoding.html">– ArrayEncoding</a>
  497. </li>
  498. <li class="nav-group-task">
  499. <a class="nav-group-task-link" href="../Structs/URLEncoding/BoolEncoding.html">– BoolEncoding</a>
  500. </li>
  501. <li class="nav-group-task">
  502. <a class="nav-group-task-link" href="../Structs/URLResponseSerializer.html">URLResponseSerializer</a>
  503. </li>
  504. </ul>
  505. </li>
  506. <li class="nav-group-name">
  507. <a class="nav-group-name-link" href="../Typealiases.html">Type Aliases</a>
  508. <ul class="nav-group-tasks">
  509. <li class="nav-group-task">
  510. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire14AFDataResponsea">AFDataResponse</a>
  511. </li>
  512. <li class="nav-group-task">
  513. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire18AFDownloadResponsea">AFDownloadResponse</a>
  514. </li>
  515. <li class="nav-group-task">
  516. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire8AFResulta">AFResult</a>
  517. </li>
  518. <li class="nav-group-task">
  519. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire12AdaptHandlera">AdaptHandler</a>
  520. </li>
  521. <li class="nav-group-task">
  522. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire17DisabledEvaluatora">DisabledEvaluator</a>
  523. </li>
  524. <li class="nav-group-task">
  525. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a>
  526. </li>
  527. <li class="nav-group-task">
  528. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire12RetryHandlera">RetryHandler</a>
  529. </li>
  530. </ul>
  531. </li>
  532. </ul>
  533. </nav>
  534. <article class="main-content">
  535. <section class="section">
  536. <div class="section-content top-matter">
  537. <h1>RetryPolicy</h1>
  538. <div class="declaration">
  539. <div class="language">
  540. <pre class="highlight swift"><code><span class="kd">open</span> <span class="kd">class</span> <span class="kt">RetryPolicy</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/RequestInterceptor.html">RequestInterceptor</a></span></code></pre>
  541. </div>
  542. </div>
  543. <p>A retry policy that retries requests using an exponential backoff for allowed HTTP methods and HTTP status codes
  544. as well as certain types of networking errors.</p>
  545. </div>
  546. </section>
  547. <section class="section">
  548. <div class="section-content">
  549. <div class="task-group">
  550. <ul class="item-container">
  551. <li class="item">
  552. <div>
  553. <code>
  554. <a name="/s:9Alamofire11RetryPolicyC07defaultB5LimitSuvpZ"></a>
  555. <a name="//apple_ref/swift/Variable/defaultRetryLimit" class="dashAnchor"></a>
  556. <a class="token" href="#/s:9Alamofire11RetryPolicyC07defaultB5LimitSuvpZ">defaultRetryLimit</a>
  557. </code>
  558. </div>
  559. <div class="height-container">
  560. <div class="pointer-container"></div>
  561. <section class="section">
  562. <div class="pointer"></div>
  563. <div class="abstract">
  564. <p>The default retry limit for retry policies.</p>
  565. </div>
  566. <div class="declaration">
  567. <h4>Declaration</h4>
  568. <div class="language">
  569. <p class="aside-title">Swift</p>
  570. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultRetryLimit</span><span class="p">:</span> <span class="kt">UInt</span></code></pre>
  571. </div>
  572. </div>
  573. </section>
  574. </div>
  575. </li>
  576. <li class="item">
  577. <div>
  578. <code>
  579. <a name="/s:9Alamofire11RetryPolicyC29defaultExponentialBackoffBaseSuvpZ"></a>
  580. <a name="//apple_ref/swift/Variable/defaultExponentialBackoffBase" class="dashAnchor"></a>
  581. <a class="token" href="#/s:9Alamofire11RetryPolicyC29defaultExponentialBackoffBaseSuvpZ">defaultExponentialBackoffBase</a>
  582. </code>
  583. </div>
  584. <div class="height-container">
  585. <div class="pointer-container"></div>
  586. <section class="section">
  587. <div class="pointer"></div>
  588. <div class="abstract">
  589. <p>The default exponential backoff base for retry policies (must be a minimum of 2).</p>
  590. </div>
  591. <div class="declaration">
  592. <h4>Declaration</h4>
  593. <div class="language">
  594. <p class="aside-title">Swift</p>
  595. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultExponentialBackoffBase</span><span class="p">:</span> <span class="kt">UInt</span></code></pre>
  596. </div>
  597. </div>
  598. </section>
  599. </div>
  600. </li>
  601. <li class="item">
  602. <div>
  603. <code>
  604. <a name="/s:9Alamofire11RetryPolicyC30defaultExponentialBackoffScaleSdvpZ"></a>
  605. <a name="//apple_ref/swift/Variable/defaultExponentialBackoffScale" class="dashAnchor"></a>
  606. <a class="token" href="#/s:9Alamofire11RetryPolicyC30defaultExponentialBackoffScaleSdvpZ">defaultExponentialBackoffScale</a>
  607. </code>
  608. </div>
  609. <div class="height-container">
  610. <div class="pointer-container"></div>
  611. <section class="section">
  612. <div class="pointer"></div>
  613. <div class="abstract">
  614. <p>The default exponential backoff scale for retry policies.</p>
  615. </div>
  616. <div class="declaration">
  617. <h4>Declaration</h4>
  618. <div class="language">
  619. <p class="aside-title">Swift</p>
  620. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultExponentialBackoffScale</span><span class="p">:</span> <span class="kt">Double</span></code></pre>
  621. </div>
  622. </div>
  623. </section>
  624. </div>
  625. </li>
  626. <li class="item">
  627. <div>
  628. <code>
  629. <a name="/s:9Alamofire11RetryPolicyC27defaultRetryableHTTPMethodsShyAA10HTTPMethodVGvpZ"></a>
  630. <a name="//apple_ref/swift/Variable/defaultRetryableHTTPMethods" class="dashAnchor"></a>
  631. <a class="token" href="#/s:9Alamofire11RetryPolicyC27defaultRetryableHTTPMethodsShyAA10HTTPMethodVGvpZ">defaultRetryableHTTPMethods</a>
  632. </code>
  633. </div>
  634. <div class="height-container">
  635. <div class="pointer-container"></div>
  636. <section class="section">
  637. <div class="pointer"></div>
  638. <div class="abstract">
  639. <p>The default HTTP methods to retry.
  640. See <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html">RFC 2616 - Section 9.1.2</a> for more information.</p>
  641. </div>
  642. <div class="declaration">
  643. <h4>Declaration</h4>
  644. <div class="language">
  645. <p class="aside-title">Swift</p>
  646. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultRetryableHTTPMethods</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt"><a href="../Structs/HTTPMethod.html">HTTPMethod</a></span><span class="o">&gt;</span></code></pre>
  647. </div>
  648. </div>
  649. </section>
  650. </div>
  651. </li>
  652. <li class="item">
  653. <div>
  654. <code>
  655. <a name="/s:9Alamofire11RetryPolicyC31defaultRetryableHTTPStatusCodesShySiGvpZ"></a>
  656. <a name="//apple_ref/swift/Variable/defaultRetryableHTTPStatusCodes" class="dashAnchor"></a>
  657. <a class="token" href="#/s:9Alamofire11RetryPolicyC31defaultRetryableHTTPStatusCodesShySiGvpZ">defaultRetryableHTTPStatusCodes</a>
  658. </code>
  659. </div>
  660. <div class="height-container">
  661. <div class="pointer-container"></div>
  662. <section class="section">
  663. <div class="pointer"></div>
  664. <div class="abstract">
  665. <p>The default HTTP status codes to retry.
  666. See <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10">RFC 2616 - Section 10</a> for more information.</p>
  667. </div>
  668. <div class="declaration">
  669. <h4>Declaration</h4>
  670. <div class="language">
  671. <p class="aside-title">Swift</p>
  672. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultRetryableHTTPStatusCodes</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt">Int</span><span class="o">&gt;</span></code></pre>
  673. </div>
  674. </div>
  675. </section>
  676. </div>
  677. </li>
  678. <li class="item">
  679. <div>
  680. <code>
  681. <a name="/s:9Alamofire11RetryPolicyC29defaultRetryableURLErrorCodesShy10Foundation0F0V4CodeVGvpZ"></a>
  682. <a name="//apple_ref/swift/Variable/defaultRetryableURLErrorCodes" class="dashAnchor"></a>
  683. <a class="token" href="#/s:9Alamofire11RetryPolicyC29defaultRetryableURLErrorCodesShy10Foundation0F0V4CodeVGvpZ">defaultRetryableURLErrorCodes</a>
  684. </code>
  685. </div>
  686. <div class="height-container">
  687. <div class="pointer-container"></div>
  688. <section class="section">
  689. <div class="pointer"></div>
  690. <div class="abstract">
  691. <p>The default URL error codes to retry.</p>
  692. </div>
  693. <div class="declaration">
  694. <h4>Declaration</h4>
  695. <div class="language">
  696. <p class="aside-title">Swift</p>
  697. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultRetryableURLErrorCodes</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt">URLError</span><span class="o">.</span><span class="kt">Code</span><span class="o">&gt;</span></code></pre>
  698. </div>
  699. </div>
  700. </section>
  701. </div>
  702. </li>
  703. <li class="item">
  704. <div>
  705. <code>
  706. <a name="/s:9Alamofire11RetryPolicyC10retryLimitSuvp"></a>
  707. <a name="//apple_ref/swift/Property/retryLimit" class="dashAnchor"></a>
  708. <a class="token" href="#/s:9Alamofire11RetryPolicyC10retryLimitSuvp">retryLimit</a>
  709. </code>
  710. </div>
  711. <div class="height-container">
  712. <div class="pointer-container"></div>
  713. <section class="section">
  714. <div class="pointer"></div>
  715. <div class="abstract">
  716. <p>The total number of times the request is allowed to be retried.</p>
  717. </div>
  718. <div class="declaration">
  719. <h4>Declaration</h4>
  720. <div class="language">
  721. <p class="aside-title">Swift</p>
  722. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">retryLimit</span><span class="p">:</span> <span class="kt">UInt</span></code></pre>
  723. </div>
  724. </div>
  725. </section>
  726. </div>
  727. </li>
  728. <li class="item">
  729. <div>
  730. <code>
  731. <a name="/s:9Alamofire11RetryPolicyC22exponentialBackoffBaseSuvp"></a>
  732. <a name="//apple_ref/swift/Property/exponentialBackoffBase" class="dashAnchor"></a>
  733. <a class="token" href="#/s:9Alamofire11RetryPolicyC22exponentialBackoffBaseSuvp">exponentialBackoffBase</a>
  734. </code>
  735. </div>
  736. <div class="height-container">
  737. <div class="pointer-container"></div>
  738. <section class="section">
  739. <div class="pointer"></div>
  740. <div class="abstract">
  741. <p>The base of the exponential backoff policy (should always be greater than or equal to 2).</p>
  742. </div>
  743. <div class="declaration">
  744. <h4>Declaration</h4>
  745. <div class="language">
  746. <p class="aside-title">Swift</p>
  747. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">exponentialBackoffBase</span><span class="p">:</span> <span class="kt">UInt</span></code></pre>
  748. </div>
  749. </div>
  750. </section>
  751. </div>
  752. </li>
  753. <li class="item">
  754. <div>
  755. <code>
  756. <a name="/s:9Alamofire11RetryPolicyC23exponentialBackoffScaleSdvp"></a>
  757. <a name="//apple_ref/swift/Property/exponentialBackoffScale" class="dashAnchor"></a>
  758. <a class="token" href="#/s:9Alamofire11RetryPolicyC23exponentialBackoffScaleSdvp">exponentialBackoffScale</a>
  759. </code>
  760. </div>
  761. <div class="height-container">
  762. <div class="pointer-container"></div>
  763. <section class="section">
  764. <div class="pointer"></div>
  765. <div class="abstract">
  766. <p>The scale of the exponential backoff.</p>
  767. </div>
  768. <div class="declaration">
  769. <h4>Declaration</h4>
  770. <div class="language">
  771. <p class="aside-title">Swift</p>
  772. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">exponentialBackoffScale</span><span class="p">:</span> <span class="kt">Double</span></code></pre>
  773. </div>
  774. </div>
  775. </section>
  776. </div>
  777. </li>
  778. <li class="item">
  779. <div>
  780. <code>
  781. <a name="/s:9Alamofire11RetryPolicyC20retryableHTTPMethodsShyAA10HTTPMethodVGvp"></a>
  782. <a name="//apple_ref/swift/Property/retryableHTTPMethods" class="dashAnchor"></a>
  783. <a class="token" href="#/s:9Alamofire11RetryPolicyC20retryableHTTPMethodsShyAA10HTTPMethodVGvp">retryableHTTPMethods</a>
  784. </code>
  785. </div>
  786. <div class="height-container">
  787. <div class="pointer-container"></div>
  788. <section class="section">
  789. <div class="pointer"></div>
  790. <div class="abstract">
  791. <p>The HTTP methods that are allowed to be retried.</p>
  792. </div>
  793. <div class="declaration">
  794. <h4>Declaration</h4>
  795. <div class="language">
  796. <p class="aside-title">Swift</p>
  797. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">retryableHTTPMethods</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt"><a href="../Structs/HTTPMethod.html">HTTPMethod</a></span><span class="o">&gt;</span></code></pre>
  798. </div>
  799. </div>
  800. </section>
  801. </div>
  802. </li>
  803. <li class="item">
  804. <div>
  805. <code>
  806. <a name="/s:9Alamofire11RetryPolicyC24retryableHTTPStatusCodesShySiGvp"></a>
  807. <a name="//apple_ref/swift/Property/retryableHTTPStatusCodes" class="dashAnchor"></a>
  808. <a class="token" href="#/s:9Alamofire11RetryPolicyC24retryableHTTPStatusCodesShySiGvp">retryableHTTPStatusCodes</a>
  809. </code>
  810. </div>
  811. <div class="height-container">
  812. <div class="pointer-container"></div>
  813. <section class="section">
  814. <div class="pointer"></div>
  815. <div class="abstract">
  816. <p>The HTTP status codes that are automatically retried by the policy.</p>
  817. </div>
  818. <div class="declaration">
  819. <h4>Declaration</h4>
  820. <div class="language">
  821. <p class="aside-title">Swift</p>
  822. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">retryableHTTPStatusCodes</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt">Int</span><span class="o">&gt;</span></code></pre>
  823. </div>
  824. </div>
  825. </section>
  826. </div>
  827. </li>
  828. <li class="item">
  829. <div>
  830. <code>
  831. <a name="/s:9Alamofire11RetryPolicyC22retryableURLErrorCodesShy10Foundation0E0V4CodeVGvp"></a>
  832. <a name="//apple_ref/swift/Property/retryableURLErrorCodes" class="dashAnchor"></a>
  833. <a class="token" href="#/s:9Alamofire11RetryPolicyC22retryableURLErrorCodesShy10Foundation0E0V4CodeVGvp">retryableURLErrorCodes</a>
  834. </code>
  835. </div>
  836. <div class="height-container">
  837. <div class="pointer-container"></div>
  838. <section class="section">
  839. <div class="pointer"></div>
  840. <div class="abstract">
  841. <p>The URL error codes that are automatically retried by the policy.</p>
  842. </div>
  843. <div class="declaration">
  844. <h4>Declaration</h4>
  845. <div class="language">
  846. <p class="aside-title">Swift</p>
  847. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">retryableURLErrorCodes</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt">URLError</span><span class="o">.</span><span class="kt">Code</span><span class="o">&gt;</span></code></pre>
  848. </div>
  849. </div>
  850. </section>
  851. </div>
  852. </li>
  853. <li class="item">
  854. <div>
  855. <code>
  856. <a name="/s:9Alamofire11RetryPolicyC10retryLimit22exponentialBackoffBase0fG5Scale20retryableHTTPMethods0J15HTTPStatusCodes0j8URLErrorM0ACSu_SuSdShyAA10HTTPMethodVGShySiGShy10Foundation0N0V4CodeVGtcfc"></a>
  857. <a name="//apple_ref/swift/Method/init(retryLimit:exponentialBackoffBase:exponentialBackoffScale:retryableHTTPMethods:retryableHTTPStatusCodes:retryableURLErrorCodes:)" class="dashAnchor"></a>
  858. <a class="token" href="#/s:9Alamofire11RetryPolicyC10retryLimit22exponentialBackoffBase0fG5Scale20retryableHTTPMethods0J15HTTPStatusCodes0j8URLErrorM0ACSu_SuSdShyAA10HTTPMethodVGShySiGShy10Foundation0N0V4CodeVGtcfc">init(retryLimit:<wbr>exponentialBackoffBase:<wbr>exponentialBackoffScale:<wbr>retryableHTTPMethods:<wbr>retryableHTTPStatusCodes:<wbr>retryableURLErrorCodes:<wbr>)</a>
  859. </code>
  860. </div>
  861. <div class="height-container">
  862. <div class="pointer-container"></div>
  863. <section class="section">
  864. <div class="pointer"></div>
  865. <div class="abstract">
  866. <p>Creates a <code>RetryPolicy</code> from the specified parameters.</p>
  867. </div>
  868. <div class="declaration">
  869. <h4>Declaration</h4>
  870. <div class="language">
  871. <p class="aside-title">Swift</p>
  872. <pre class="highlight swift"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">retryLimit</span><span class="p">:</span> <span class="kt">UInt</span> <span class="o">=</span> <span class="kt">RetryPolicy</span><span class="o">.</span><span class="n"><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC07defaultB5LimitSuvpZ">defaultRetryLimit</a></span><span class="p">,</span>
  873. <span class="nv">exponentialBackoffBase</span><span class="p">:</span> <span class="kt">UInt</span> <span class="o">=</span> <span class="kt">RetryPolicy</span><span class="o">.</span><span class="n"><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC29defaultExponentialBackoffBaseSuvpZ">defaultExponentialBackoffBase</a></span><span class="p">,</span>
  874. <span class="nv">exponentialBackoffScale</span><span class="p">:</span> <span class="kt">Double</span> <span class="o">=</span> <span class="kt">RetryPolicy</span><span class="o">.</span><span class="n"><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC30defaultExponentialBackoffScaleSdvpZ">defaultExponentialBackoffScale</a></span><span class="p">,</span>
  875. <span class="nv">retryableHTTPMethods</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt"><a href="../Structs/HTTPMethod.html">HTTPMethod</a></span><span class="o">&gt;</span> <span class="o">=</span> <span class="kt">RetryPolicy</span><span class="o">.</span><span class="n"><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC27defaultRetryableHTTPMethodsShyAA10HTTPMethodVGvpZ">defaultRetryableHTTPMethods</a></span><span class="p">,</span>
  876. <span class="nv">retryableHTTPStatusCodes</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt">Int</span><span class="o">&gt;</span> <span class="o">=</span> <span class="kt">RetryPolicy</span><span class="o">.</span><span class="n"><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC31defaultRetryableHTTPStatusCodesShySiGvpZ">defaultRetryableHTTPStatusCodes</a></span><span class="p">,</span>
  877. <span class="nv">retryableURLErrorCodes</span><span class="p">:</span> <span class="kt">Set</span><span class="o">&lt;</span><span class="kt">URLError</span><span class="o">.</span><span class="kt">Code</span><span class="o">&gt;</span> <span class="o">=</span> <span class="kt">RetryPolicy</span><span class="o">.</span><span class="n"><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC29defaultRetryableURLErrorCodesShy10Foundation0F0V4CodeVGvpZ">defaultRetryableURLErrorCodes</a></span><span class="p">)</span></code></pre>
  878. </div>
  879. </div>
  880. <div>
  881. <h4>Parameters</h4>
  882. <table class="graybox">
  883. <tbody>
  884. <tr>
  885. <td>
  886. <code>
  887. <em>retryLimit</em>
  888. </code>
  889. </td>
  890. <td>
  891. <div>
  892. <p>The total number of times the request is allowed to be retried. <code>2</code> by default.</p>
  893. </div>
  894. </td>
  895. </tr>
  896. <tr>
  897. <td>
  898. <code>
  899. <em>exponentialBackoffBase</em>
  900. </code>
  901. </td>
  902. <td>
  903. <div>
  904. <p>The base of the exponential backoff policy. <code>2</code> by default.</p>
  905. </div>
  906. </td>
  907. </tr>
  908. <tr>
  909. <td>
  910. <code>
  911. <em>exponentialBackoffScale</em>
  912. </code>
  913. </td>
  914. <td>
  915. <div>
  916. <p>The scale of the exponential backoff. <code>0.5</code> by default.</p>
  917. </div>
  918. </td>
  919. </tr>
  920. <tr>
  921. <td>
  922. <code>
  923. <em>retryableHTTPMethods</em>
  924. </code>
  925. </td>
  926. <td>
  927. <div>
  928. <p>The HTTP methods that are allowed to be retried.
  929. <code><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC27defaultRetryableHTTPMethodsShyAA10HTTPMethodVGvpZ">RetryPolicy.defaultRetryableHTTPMethods</a></code> by default.</p>
  930. </div>
  931. </td>
  932. </tr>
  933. <tr>
  934. <td>
  935. <code>
  936. <em>retryableHTTPStatusCodes</em>
  937. </code>
  938. </td>
  939. <td>
  940. <div>
  941. <p>The HTTP status codes that are automatically retried by the policy.
  942. <code><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC31defaultRetryableHTTPStatusCodesShySiGvpZ">RetryPolicy.defaultRetryableHTTPStatusCodes</a></code> by default.</p>
  943. </div>
  944. </td>
  945. </tr>
  946. <tr>
  947. <td>
  948. <code>
  949. <em>retryableURLErrorCodes</em>
  950. </code>
  951. </td>
  952. <td>
  953. <div>
  954. <p>The URL error codes that are automatically retried by the policy.
  955. <code><a href="../Classes/RetryPolicy.html#/s:9Alamofire11RetryPolicyC29defaultRetryableURLErrorCodesShy10Foundation0F0V4CodeVGvpZ">RetryPolicy.defaultRetryableURLErrorCodes</a></code> by default.</p>
  956. </div>
  957. </td>
  958. </tr>
  959. </tbody>
  960. </table>
  961. </div>
  962. </section>
  963. </div>
  964. </li>
  965. <li class="item">
  966. <div>
  967. <code>
  968. <a name="/s:9Alamofire14RequestRetrierP5retry_3for5dueTo10completionyAA0B0C_AA7SessionCs5Error_pyAA11RetryResultOctF"></a>
  969. <a name="//apple_ref/swift/Method/retry(_:for:dueTo:completion:)" class="dashAnchor"></a>
  970. <a class="token" href="#/s:9Alamofire14RequestRetrierP5retry_3for5dueTo10completionyAA0B0C_AA7SessionCs5Error_pyAA11RetryResultOctF">retry(_:<wbr>for:<wbr>dueTo:<wbr>completion:<wbr>)</a>
  971. </code>
  972. </div>
  973. <div class="height-container">
  974. <div class="pointer-container"></div>
  975. <section class="section">
  976. <div class="pointer"></div>
  977. <div class="abstract">
  978. </div>
  979. <div class="declaration">
  980. <h4>Declaration</h4>
  981. <div class="language">
  982. <p class="aside-title">Swift</p>
  983. <pre class="highlight swift"><code><span class="kd">open</span> <span class="kd">func</span> <span class="nf">retry</span><span class="p">(</span><span class="n">_</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>
  984. <span class="k">for</span> <span class="nv">session</span><span class="p">:</span> <span class="kt"><a href="../Classes/Session.html">Session</a></span><span class="p">,</span>
  985. <span class="n">dueTo</span> <span class="nv">error</span><span class="p">:</span> <span class="kt">Error</span><span class="p">,</span>
  986. <span class="nv">completion</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt"><a href="../Enums/RetryResult.html">RetryResult</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
  987. </div>
  988. </div>
  989. </section>
  990. </div>
  991. </li>
  992. <li class="item">
  993. <div>
  994. <code>
  995. <a name="/s:9Alamofire11RetryPolicyC06shouldB07request5dueToSbAA7RequestC_s5Error_ptF"></a>
  996. <a name="//apple_ref/swift/Method/shouldRetry(request:dueTo:)" class="dashAnchor"></a>
  997. <a class="token" href="#/s:9Alamofire11RetryPolicyC06shouldB07request5dueToSbAA7RequestC_s5Error_ptF">shouldRetry(request:<wbr>dueTo:<wbr>)</a>
  998. </code>
  999. </div>
  1000. <div class="height-container">
  1001. <div class="pointer-container"></div>
  1002. <section class="section">
  1003. <div class="pointer"></div>
  1004. <div class="abstract">
  1005. <p>Determines whether or not to retry the provided <code><a href="../Classes/Request.html">Request</a></code>.</p>
  1006. </div>
  1007. <div class="declaration">
  1008. <h4>Declaration</h4>
  1009. <div class="language">
  1010. <p class="aside-title">Swift</p>
  1011. <pre class="highlight swift"><code><span class="kd">open</span> <span class="kd">func</span> <span class="nf">shouldRetry</span><span class="p">(</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">dueTo</span> <span class="nv">error</span><span class="p">:</span> <span class="kt">Error</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
  1012. </div>
  1013. </div>
  1014. <div>
  1015. <h4>Parameters</h4>
  1016. <table class="graybox">
  1017. <tbody>
  1018. <tr>
  1019. <td>
  1020. <code>
  1021. <em>request</em>
  1022. </code>
  1023. </td>
  1024. <td>
  1025. <div>
  1026. <p><code><a href="../Classes/Request.html">Request</a></code> that failed due to the provided <code>Error</code>.</p>
  1027. </div>
  1028. </td>
  1029. </tr>
  1030. <tr>
  1031. <td>
  1032. <code>
  1033. <em>error</em>
  1034. </code>
  1035. </td>
  1036. <td>
  1037. <div>
  1038. <p><code>Error</code> encountered while executing the <code><a href="../Classes/Request.html">Request</a></code>.</p>
  1039. </div>
  1040. </td>
  1041. </tr>
  1042. </tbody>
  1043. </table>
  1044. </div>
  1045. <div>
  1046. <h4>Return Value</h4>
  1047. <p><code>Bool</code> determining whether or not to retry the <code><a href="../Classes/Request.html">Request</a></code>.</p>
  1048. </div>
  1049. </section>
  1050. </div>
  1051. </li>
  1052. </ul>
  1053. </div>
  1054. </div>
  1055. </section>
  1056. </article>
  1057. </div>
  1058. <section class="footer">
  1059. <p>&copy; 2023 <a class="link" href="http://alamofire.org/" target="_blank" rel="external noopener">Alamofire Software Foundation</a>. All rights reserved. (Last updated: 2023-05-10)</p>
  1060. <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external noopener">jazzy ♪♫ v0.14.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external noopener">Realm</a> project.</p>
  1061. </section>
  1062. </body>
  1063. </html>