files.com 1.1.812 → 1.1.814

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. checksums.yaml +4 -4
  2. data/_VERSION +1 -1
  3. data/doc/Files/APIConnectionError.html +1 -1
  4. data/doc/Files/APIError.html +1 -1
  5. data/doc/Files/AccountAlreadyExistsError.html +1 -1
  6. data/doc/Files/AccountLineItem.html +1 -1
  7. data/doc/Files/AccountOverdueError.html +1 -1
  8. data/doc/Files/Action.html +1 -1
  9. data/doc/Files/ActionLog.html +1 -1
  10. data/doc/Files/ActionNotificationExport.html +1 -1
  11. data/doc/Files/ActionNotificationExportResult.html +1 -1
  12. data/doc/Files/AdditionalAuthenticationRequiredError.html +1 -1
  13. data/doc/Files/AgentNode.html +1 -1
  14. data/doc/Files/AgentNodeConnection.html +1 -1
  15. data/doc/Files/AgentNodeInstance.html +1 -1
  16. data/doc/Files/AgentPushUpdate.html +1 -1
  17. data/doc/Files/AgentPushUpdateBlockedError.html +1 -1
  18. data/doc/Files/AgentUnavailableError.html +1 -1
  19. data/doc/Files/AgentUpgradeRequiredError.html +1 -1
  20. data/doc/Files/AiAssistantPersonality.html +1 -1
  21. data/doc/Files/AiTask.html +1 -1
  22. data/doc/Files/AiTaskCannotBeRunManuallyError.html +1 -1
  23. data/doc/Files/AlreadyCompletedError.html +1 -1
  24. data/doc/Files/Api.html +20 -13
  25. data/doc/Files/ApiClient/RequestLogContext.html +29 -29
  26. data/doc/Files/ApiClient/TransferSettings.html +721 -0
  27. data/doc/Files/ApiClient.html +756 -204
  28. data/doc/Files/ApiKey.html +1 -1
  29. data/doc/Files/ApiKeyIsDisabledError.html +1 -1
  30. data/doc/Files/ApiKeyIsPathRestrictedError.html +1 -1
  31. data/doc/Files/ApiKeyNotFoundError.html +1 -1
  32. data/doc/Files/ApiKeyOnlyForDesktopAppError.html +1 -1
  33. data/doc/Files/ApiKeyOnlyForFileOperationsError.html +1 -1
  34. data/doc/Files/ApiKeyOnlyForMobileAppError.html +1 -1
  35. data/doc/Files/ApiKeyOnlyForOfficeIntegrationError.html +1 -1
  36. data/doc/Files/ApiKeySessionsNotSupportedError.html +1 -1
  37. data/doc/Files/ApiRequestLog.html +1 -1
  38. data/doc/Files/App.html +1 -1
  39. data/doc/Files/As2IncomingMessage.html +1 -1
  40. data/doc/Files/As2OutgoingMessage.html +1 -1
  41. data/doc/Files/As2Partner.html +1 -1
  42. data/doc/Files/As2Station.html +1 -1
  43. data/doc/Files/AttachmentTooLargeError.html +1 -1
  44. data/doc/Files/AuthenticationError.html +1 -1
  45. data/doc/Files/AuthenticationRequiredError.html +1 -1
  46. data/doc/Files/Auto.html +1 -1
  47. data/doc/Files/Automation.html +1 -1
  48. data/doc/Files/AutomationAuthoringSchema.html +1 -1
  49. data/doc/Files/AutomationCannotBeRunManuallyError.html +1 -1
  50. data/doc/Files/AutomationExecutionNode.html +1 -1
  51. data/doc/Files/AutomationLog.html +1 -1
  52. data/doc/Files/AutomationRun.html +1 -1
  53. data/doc/Files/AutomationsUnavailableError.html +1 -1
  54. data/doc/Files/BadRequestError.html +1 -1
  55. data/doc/Files/BandwidthSnapshot.html +1 -1
  56. data/doc/Files/Behavior.html +1 -1
  57. data/doc/Files/BehaviorNotAllowedOnRemoteServerError.html +1 -1
  58. data/doc/Files/BillingInformationHiddenError.html +1 -1
  59. data/doc/Files/BillingPermissionRequiredError.html +1 -1
  60. data/doc/Files/BufferedUploadDisabledForThisDestinationError.html +1 -1
  61. data/doc/Files/Bundle.html +1 -1
  62. data/doc/Files/BundleAction.html +1 -1
  63. data/doc/Files/BundleDownload.html +1 -1
  64. data/doc/Files/BundleMaximumUsesReachedError.html +1 -1
  65. data/doc/Files/BundleNotification.html +1 -1
  66. data/doc/Files/BundleOnlyAllowsPreviewsError.html +1 -1
  67. data/doc/Files/BundleOperationRequiresSubfolderError.html +1 -1
  68. data/doc/Files/BundlePath.html +1 -1
  69. data/doc/Files/BundlePathNotFoundError.html +1 -1
  70. data/doc/Files/BundlePermissionRequiredError.html +1 -1
  71. data/doc/Files/BundleRecipient.html +1 -1
  72. data/doc/Files/BundleRegistration.html +1 -1
  73. data/doc/Files/BundleRegistrationCodeFailedError.html +1 -1
  74. data/doc/Files/BundleRegistrationNotFoundError.html +1 -1
  75. data/doc/Files/CannotAdministerHigherLevelUserError.html +1 -1
  76. data/doc/Files/CannotDownloadDirectoryError.html +1 -1
  77. data/doc/Files/CannotLoginWhileUsingKeyError.html +1 -1
  78. data/doc/Files/CantActForOtherUserError.html +1 -1
  79. data/doc/Files/CantMoveWithMultipleLocationsError.html +1 -1
  80. data/doc/Files/ChatMessage.html +1 -1
  81. data/doc/Files/ChatSession.html +1 -1
  82. data/doc/Files/ChildSiteManagementPolicy.html +1 -1
  83. data/doc/Files/Clickwrap.html +1 -1
  84. data/doc/Files/CodeNotFoundError.html +1 -1
  85. data/doc/Files/ConfigurationLockedPathError.html +1 -1
  86. data/doc/Files/ContactAdminForPasswordChangeHelpError.html +1 -1
  87. data/doc/Files/CouldNotCreateParentError.html +1 -1
  88. data/doc/Files/CustomDomain.html +1 -1
  89. data/doc/Files/DatetimeParseError.html +1 -1
  90. data/doc/Files/DesktopConfigurationProfile.html +1 -1
  91. data/doc/Files/DestinationExistsError.html +1 -1
  92. data/doc/Files/DestinationFolderLimitedError.html +1 -1
  93. data/doc/Files/DestinationParentConflictError.html +1 -1
  94. data/doc/Files/DestinationParentDoesNotExistError.html +1 -1
  95. data/doc/Files/DestinationSameError.html +1 -1
  96. data/doc/Files/DestinationSiteMismatchError.html +1 -1
  97. data/doc/Files/DirectConnectionInfo.html +1 -1
  98. data/doc/Files/DnsRecord.html +1 -1
  99. data/doc/Files/DoesNotSupportSortingError.html +1 -1
  100. data/doc/Files/DuplicateShareRecipientError.html +1 -1
  101. data/doc/Files/EmailIncomingMessage.html +1 -1
  102. data/doc/Files/EmailLog.html +1 -1
  103. data/doc/Files/Error.html +2 -2
  104. data/doc/Files/Errors.html +1 -1
  105. data/doc/Files/EventChannel.html +1 -1
  106. data/doc/Files/EventDeliveryAttempt.html +1 -1
  107. data/doc/Files/EventRecord.html +1 -1
  108. data/doc/Files/EventSubscription.html +1 -1
  109. data/doc/Files/EventTarget.html +1 -1
  110. data/doc/Files/ExavaultApiRequestLog.html +1 -1
  111. data/doc/Files/ExceededRuntimeLimitError.html +1 -1
  112. data/doc/Files/Expectation.html +1 -1
  113. data/doc/Files/ExpectationAlreadyHasOpenWindowError.html +1 -1
  114. data/doc/Files/ExpectationEvaluation.html +1 -1
  115. data/doc/Files/ExpectationIncident.html +1 -1
  116. data/doc/Files/ExpectationNotManualTriggerError.html +1 -1
  117. data/doc/Files/ExpiredPrivateKeyError.html +1 -1
  118. data/doc/Files/ExpiredPublicKeyError.html +1 -1
  119. data/doc/Files/ExportFailureError.html +1 -1
  120. data/doc/Files/ExportNotReadyError.html +1 -1
  121. data/doc/Files/ExternalEvent.html +1 -1
  122. data/doc/Files/FailedToChangePasswordError.html +1 -1
  123. data/doc/Files/File.html +2019 -1515
  124. data/doc/Files/FileAction.html +1 -1
  125. data/doc/Files/FileActionError.html +1 -1
  126. data/doc/Files/FileComment.html +1 -1
  127. data/doc/Files/FileCommentReaction.html +1 -1
  128. data/doc/Files/FileLockedError.html +1 -1
  129. data/doc/Files/FileMigration.html +1 -1
  130. data/doc/Files/FileMigrationLog.html +1 -1
  131. data/doc/Files/FileNotFoundError.html +1 -1
  132. data/doc/Files/FileNotUploadedError.html +1 -1
  133. data/doc/Files/FilePendingProcessingError.html +1 -1
  134. data/doc/Files/FileProcessingErrorError.html +1 -1
  135. data/doc/Files/FileTooBigToDecryptError.html +1 -1
  136. data/doc/Files/FileTooBigToEncryptError.html +1 -1
  137. data/doc/Files/FileUploadNotFoundError.html +1 -1
  138. data/doc/Files/FileUploadPart.html +1 -1
  139. data/doc/Files/FileUploadedToWrongRegionError.html +1 -1
  140. data/doc/Files/FileUtils.html +1 -1
  141. data/doc/Files/FilenameTooLongError.html +1 -1
  142. data/doc/Files/FilesAgentFailedAuthorizationError.html +1 -1
  143. data/doc/Files/FilesNativeStorageOverloadedError.html +1 -1
  144. data/doc/Files/Folder.html +1 -1
  145. data/doc/Files/FolderAdminOrBillingPermissionRequiredError.html +1 -1
  146. data/doc/Files/FolderAdminPermissionRequiredError.html +1 -1
  147. data/doc/Files/FolderLockedError.html +1 -1
  148. data/doc/Files/FolderMustNotBeAFileError.html +1 -1
  149. data/doc/Files/FolderNotEmptyError.html +1 -1
  150. data/doc/Files/FoldersNotAllowedError.html +1 -1
  151. data/doc/Files/FormField.html +1 -1
  152. data/doc/Files/FormFieldSet.html +1 -1
  153. data/doc/Files/FtpActionLog.html +1 -1
  154. data/doc/Files/FullPermissionRequiredError.html +1 -1
  155. data/doc/Files/GpgKey.html +1 -1
  156. data/doc/Files/Group.html +1 -1
  157. data/doc/Files/GroupNotFoundError.html +1 -1
  158. data/doc/Files/GroupUser.html +1 -1
  159. data/doc/Files/History.html +1 -1
  160. data/doc/Files/HistoryExport.html +1 -1
  161. data/doc/Files/HistoryExportResult.html +1 -1
  162. data/doc/Files/HistoryPermissionRequiredError.html +1 -1
  163. data/doc/Files/HistoryUnavailableError.html +1 -1
  164. data/doc/Files/HolidayCalendar.html +1 -1
  165. data/doc/Files/HolidayRegion.html +1 -1
  166. data/doc/Files/Image.html +1 -1
  167. data/doc/Files/InAppAiAssistantUnavailableError.html +1 -1
  168. data/doc/Files/InboundS3Log.html +1 -1
  169. data/doc/Files/InboxNotFoundError.html +1 -1
  170. data/doc/Files/InboxRecipient.html +1 -1
  171. data/doc/Files/InboxRegistration.html +1 -1
  172. data/doc/Files/InboxRegistrationCodeFailedError.html +1 -1
  173. data/doc/Files/InboxUpload.html +1 -1
  174. data/doc/Files/InsufficientPermissionForParamsError.html +1 -1
  175. data/doc/Files/InsufficientPermissionForSiteError.html +1 -1
  176. data/doc/Files/IntegrationCentricProfile.html +1 -1
  177. data/doc/Files/InternalGeneralErrorError.html +1 -1
  178. data/doc/Files/InvalidBodyError.html +1 -1
  179. data/doc/Files/InvalidBundleCodeError.html +1 -1
  180. data/doc/Files/InvalidCredentialsError.html +1 -1
  181. data/doc/Files/InvalidCursorError.html +1 -1
  182. data/doc/Files/InvalidCursorTypeForSortError.html +1 -1
  183. data/doc/Files/InvalidEtagsError.html +1 -1
  184. data/doc/Files/InvalidFileTypeError.html +1 -1
  185. data/doc/Files/InvalidFilenameError.html +1 -1
  186. data/doc/Files/InvalidFilterAliasCombinationError.html +1 -1
  187. data/doc/Files/InvalidFilterFieldError.html +1 -1
  188. data/doc/Files/InvalidFilterParamError.html +1 -1
  189. data/doc/Files/InvalidFilterParamFormatError.html +1 -1
  190. data/doc/Files/InvalidFilterParamValueError.html +1 -1
  191. data/doc/Files/InvalidInputEncodingError.html +1 -1
  192. data/doc/Files/InvalidInterfaceError.html +1 -1
  193. data/doc/Files/InvalidOauthError.html +1 -1
  194. data/doc/Files/InvalidOauthProviderError.html +1 -1
  195. data/doc/Files/InvalidOrExpiredCodeError.html +1 -1
  196. data/doc/Files/InvalidParameterError.html +5 -1
  197. data/doc/Files/InvalidPathError.html +1 -1
  198. data/doc/Files/InvalidPriorityColorError.html +1 -1
  199. data/doc/Files/InvalidRangeError.html +1 -1
  200. data/doc/Files/InvalidReturnToUrlError.html +1 -1
  201. data/doc/Files/InvalidSearchQueryError.html +1 -1
  202. data/doc/Files/InvalidSessionError.html +1 -1
  203. data/doc/Files/InvalidSiteError.html +1 -1
  204. data/doc/Files/InvalidSortFieldError.html +1 -1
  205. data/doc/Files/InvalidSortFilterCombinationError.html +1 -1
  206. data/doc/Files/InvalidUploadOffsetError.html +1 -1
  207. data/doc/Files/InvalidUploadPartGapError.html +1 -1
  208. data/doc/Files/InvalidUploadPartSizeError.html +1 -1
  209. data/doc/Files/InvalidUsernameOrPasswordError.html +1 -1
  210. data/doc/Files/InvalidWorkspaceIdHeaderError.html +1 -1
  211. data/doc/Files/InvalidZipFileError.html +1 -1
  212. data/doc/Files/Invoice.html +1 -1
  213. data/doc/Files/InvoiceLineItem.html +1 -1
  214. data/doc/Files/IpAddress.html +1 -1
  215. data/doc/Files/KeyLifecycleRule.html +1 -1
  216. data/doc/Files/List.html +1 -1
  217. data/doc/Files/Lock.html +1 -1
  218. data/doc/Files/LockOperationBusyError.html +1 -1
  219. data/doc/Files/LockedOutError.html +1 -1
  220. data/doc/Files/LockoutRegionMismatchError.html +1 -1
  221. data/doc/Files/MetadataCategory.html +1 -1
  222. data/doc/Files/MetadataNotSupportedOnRemotesError.html +1 -1
  223. data/doc/Files/MethodNotAllowedError.html +1 -1
  224. data/doc/Files/MigrationInProgressError.html +1 -1
  225. data/doc/Files/MissingParameterError.html +1 -1
  226. data/doc/Files/ModelSaveErrorError.html +1 -1
  227. data/doc/Files/MoverAccessDeniedError.html +1 -1
  228. data/doc/Files/MoverPackageRequiredError.html +1 -1
  229. data/doc/Files/MultipleProcessingErrorsError.html +1 -1
  230. data/doc/Files/MultipleSortParamsNotAllowedError.html +1 -1
  231. data/doc/Files/MustAuthenticateWithApiKeyError.html +1 -1
  232. data/doc/Files/NeedAdminPermissionForInboxError.html +1 -1
  233. data/doc/Files/NestedNotFoundError.html +1 -1
  234. data/doc/Files/NoAccountForSiteError.html +1 -1
  235. data/doc/Files/NoValidInputParamsError.html +1 -1
  236. data/doc/Files/NonAdminsMustQueryByFolderOrPathError.html +1 -1
  237. data/doc/Files/NotAllowedToCreateBundleError.html +1 -1
  238. data/doc/Files/NotAuthenticatedError.html +1 -1
  239. data/doc/Files/NotAuthorizedError.html +1 -1
  240. data/doc/Files/NotEnqueuableSyncError.html +1 -1
  241. data/doc/Files/NotFoundError.html +1 -1
  242. data/doc/Files/NotImplementedError.html +1 -1
  243. data/doc/Files/Notification.html +1 -1
  244. data/doc/Files/OffsetUploadNotAllowedWithMalwareScanningError.html +1 -1
  245. data/doc/Files/OneTimePasswordIncorrectError.html +1 -1
  246. data/doc/Files/OutboundConnectionLog.html +1 -1
  247. data/doc/Files/PartNumberTooLargeError.html +1 -1
  248. data/doc/Files/Partner.html +1 -1
  249. data/doc/Files/PartnerChannel.html +1 -1
  250. data/doc/Files/PartnerChannelTemplate.html +1 -1
  251. data/doc/Files/PartnerConnection.html +1 -1
  252. data/doc/Files/PartnerSite.html +1 -1
  253. data/doc/Files/PartnerSiteRequest.html +1 -1
  254. data/doc/Files/PasswordChangeNotRequiredError.html +1 -1
  255. data/doc/Files/PasswordChangeRequiredError.html +1 -1
  256. data/doc/Files/PathCannotHaveTrailingWhitespaceError.html +1 -1
  257. data/doc/Files/PathTooLongError.html +1 -1
  258. data/doc/Files/PathUtil.html +1 -1
  259. data/doc/Files/Payment.html +1 -1
  260. data/doc/Files/PaymentLineItem.html +1 -1
  261. data/doc/Files/PaymentMethodErrorError.html +1 -1
  262. data/doc/Files/PendingWorkEvent.html +1 -1
  263. data/doc/Files/Permission.html +1 -1
  264. data/doc/Files/PlanNotFoundError.html +1 -1
  265. data/doc/Files/Preview.html +1 -1
  266. data/doc/Files/PreviewOnlyPermissionCannotDownloadError.html +1 -1
  267. data/doc/Files/ProcessingFailureError.html +1 -1
  268. data/doc/Files/PublicHostingRequestLog.html +1 -1
  269. data/doc/Files/PublicIpAddress.html +1 -1
  270. data/doc/Files/PublicKey.html +1 -1
  271. data/doc/Files/RateLimitedError.html +1 -1
  272. data/doc/Files/ReadOnlySessionError.html +1 -1
  273. data/doc/Files/ReadPermissionRequiredError.html +1 -1
  274. data/doc/Files/ReauthenticationFailedError.html +1 -1
  275. data/doc/Files/ReauthenticationFailedFinalError.html +1 -1
  276. data/doc/Files/ReauthenticationNeededActionError.html +1 -1
  277. data/doc/Files/ReauthenticationNeededFieldsError.html +1 -1
  278. data/doc/Files/ReauthenticationRateLimitedError.html +1 -1
  279. data/doc/Files/RecaptchaFailedError.html +1 -1
  280. data/doc/Files/RecipientAlreadySharedError.html +1 -1
  281. data/doc/Files/RemoteBandwidthSnapshot.html +1 -1
  282. data/doc/Files/RemoteDesktopDebugLoggingDisabledError.html +1 -1
  283. data/doc/Files/RemoteEntryReadOnlyError.html +1 -1
  284. data/doc/Files/RemoteMountBackend.html +1 -1
  285. data/doc/Files/RemoteServer.html +1 -1
  286. data/doc/Files/RemoteServerConfigurationFile.html +1 -1
  287. data/doc/Files/RemoteServerCredential.html +1 -1
  288. data/doc/Files/RemoteServerErrorError.html +1 -1
  289. data/doc/Files/Request.html +1 -1
  290. data/doc/Files/RequestBodyTooLargeError.html +1 -1
  291. data/doc/Files/RequestParamsContainInvalidCharacterError.html +1 -1
  292. data/doc/Files/RequestParamsInvalidError.html +1 -1
  293. data/doc/Files/RequestParamsRequiredError.html +1 -1
  294. data/doc/Files/ResourceBelongsToParentSiteError.html +1 -1
  295. data/doc/Files/ResourceLockedError.html +1 -1
  296. data/doc/Files/Response.html +1 -1
  297. data/doc/Files/Restore.html +1 -1
  298. data/doc/Files/RootFolderBehaviorSiteAdminRequiredError.html +1 -1
  299. data/doc/Files/RootFolderBehaviorSkipSiteAdminRequiredError.html +1 -1
  300. data/doc/Files/Schedule.html +1 -1
  301. data/doc/Files/ScheduledExport.html +1 -1
  302. data/doc/Files/ScimLog.html +1 -1
  303. data/doc/Files/SearchAllOnChildPathError.html +1 -1
  304. data/doc/Files/SearchUnavailableError.html +1 -1
  305. data/doc/Files/Secret.html +1 -1
  306. data/doc/Files/SelfManagedRequiredError.html +1 -1
  307. data/doc/Files/ServiceUnavailableError.html +1 -1
  308. data/doc/Files/Session.html +1 -1
  309. data/doc/Files/SettingsChange.html +1 -1
  310. data/doc/Files/SftpActionLog.html +1 -1
  311. data/doc/Files/SftpHostKey.html +1 -1
  312. data/doc/Files/ShareGroup.html +1 -1
  313. data/doc/Files/ShareGroupMember.html +1 -1
  314. data/doc/Files/SiemHttpDestination.html +1 -1
  315. data/doc/Files/SiemHttpDestinationEvent.html +1 -1
  316. data/doc/Files/Site.html +1 -1
  317. data/doc/Files/SiteAdminOrPartnerAdminPermissionRequiredError.html +1 -1
  318. data/doc/Files/SiteAdminOrWorkspaceAdminOrFolderAdminPermissionRequiredError.html +1 -1
  319. data/doc/Files/SiteAdminOrWorkspaceAdminOrPartnerAdminOrFolderAdminPermissionRequiredError.html +1 -1
  320. data/doc/Files/SiteAdminOrWorkspaceAdminOrPartnerAdminPermissionRequiredError.html +1 -1
  321. data/doc/Files/SiteAdminOrWorkspaceAdminPermissionRequiredError.html +1 -1
  322. data/doc/Files/SiteAdminRequiredError.html +1 -1
  323. data/doc/Files/SiteConfigurationError.html +1 -1
  324. data/doc/Files/SiteDisabledError.html +1 -1
  325. data/doc/Files/SiteFilesAreImmutableError.html +1 -1
  326. data/doc/Files/SiteNotFoundError.html +1 -1
  327. data/doc/Files/SiteSubdomainRedirect.html +1 -1
  328. data/doc/Files/SiteWasRemovedError.html +1 -1
  329. data/doc/Files/SizableIO.html +43 -41
  330. data/doc/Files/Snapshot.html +1 -1
  331. data/doc/Files/SsoEvent.html +1 -1
  332. data/doc/Files/SsoStrategy.html +1 -1
  333. data/doc/Files/Status.html +1 -1
  334. data/doc/Files/Style.html +1 -1
  335. data/doc/Files/SubfolderLockedError.html +1 -1
  336. data/doc/Files/Sync.html +1 -1
  337. data/doc/Files/SyncInProgressError.html +1 -1
  338. data/doc/Files/SyncLog.html +1 -1
  339. data/doc/Files/SyncRun.html +1 -1
  340. data/doc/Files/SyncRunLiveTransfer.html +1 -1
  341. data/doc/Files/SystemProfiler.html +1 -1
  342. data/doc/Files/TooManyConcurrentLoginsError.html +1 -1
  343. data/doc/Files/TooManyConcurrentRequestsError.html +1 -1
  344. data/doc/Files/TooManyLoginAttemptsError.html +1 -1
  345. data/doc/Files/TooManyRequestsError.html +1 -1
  346. data/doc/Files/TooManySharesError.html +1 -1
  347. data/doc/Files/Transfer/BufferLimitError.html +175 -0
  348. data/doc/Files/Transfer/ByteBudget/Reservation.html +301 -0
  349. data/doc/Files/Transfer/ByteBudget.html +748 -0
  350. data/doc/Files/Transfer/CancelledError.html +235 -0
  351. data/doc/Files/Transfer/Checkpoint.html +1371 -0
  352. data/doc/Files/Transfer/CheckpointError.html +173 -0
  353. data/doc/Files/Transfer/ClientTransport/ClientResponse.html +661 -0
  354. data/doc/Files/Transfer/ClientTransport/Reader.html +530 -0
  355. data/doc/Files/Transfer/ClientTransport.html +675 -0
  356. data/doc/Files/Transfer/Clock.html +189 -0
  357. data/doc/Files/Transfer/Control.html +667 -0
  358. data/doc/Files/Transfer/Controller/Attempt.html +465 -0
  359. data/doc/Files/Transfer/Controller.html +1166 -0
  360. data/doc/Files/Transfer/Coordinator/Timing.html +568 -0
  361. data/doc/Files/Transfer/Coordinator.html +534 -0
  362. data/doc/Files/Transfer/DownloadCoordinator/FileSink.html +976 -0
  363. data/doc/Files/Transfer/DownloadCoordinator/IoSink.html +1168 -0
  364. data/doc/Files/Transfer/DownloadCoordinator/Piece.html +875 -0
  365. data/doc/Files/Transfer/DownloadCoordinator.html +728 -0
  366. data/doc/Files/Transfer/FileSlots.html +480 -0
  367. data/doc/Files/Transfer/FrontendResponseError.html +235 -0
  368. data/doc/Files/Transfer/Holds.html +505 -0
  369. data/doc/Files/Transfer/HttpTransport.html +579 -0
  370. data/doc/Files/Transfer/Job.html +2338 -0
  371. data/doc/Files/Transfer/Options.html +924 -0
  372. data/doc/Files/Transfer/PausedError.html +319 -0
  373. data/doc/Files/Transfer/Policy.html +1642 -0
  374. data/doc/Files/Transfer/RequestPermits.html +160 -0
  375. data/doc/Files/Transfer/SourceChangedError.html +235 -0
  376. data/doc/Files/Transfer/StorageResponse.html +546 -0
  377. data/doc/Files/Transfer/StorageRetry.html +1098 -0
  378. data/doc/Files/Transfer/UploadCoordinator/Grant.html +1048 -0
  379. data/doc/Files/Transfer/UploadCoordinator/Part.html +1048 -0
  380. data/doc/Files/Transfer/UploadCoordinator/Region.html +295 -0
  381. data/doc/Files/Transfer/UploadCoordinator/Segments.html +299 -0
  382. data/doc/Files/Transfer/UploadCoordinator/Source.html +725 -0
  383. data/doc/Files/Transfer/UploadCoordinator/StreamSource.html +664 -0
  384. data/doc/Files/Transfer/UploadCoordinator.html +546 -0
  385. data/doc/Files/Transfer/UploadPlan.html +522 -0
  386. data/doc/Files/Transfer/VersionChangedError.html +235 -0
  387. data/doc/Files/Transfer.html +134 -0
  388. data/doc/Files/TrialExpiredError.html +1 -1
  389. data/doc/Files/TrialLockedError.html +1 -1
  390. data/doc/Files/TwoFactorAuthenticationCodeAlreadySentError.html +1 -1
  391. data/doc/Files/TwoFactorAuthenticationCountryBlacklistedError.html +1 -1
  392. data/doc/Files/TwoFactorAuthenticationErrorError.html +1 -1
  393. data/doc/Files/TwoFactorAuthenticationGeneralErrorError.html +1 -1
  394. data/doc/Files/TwoFactorAuthenticationMethodUnsupportedErrorError.html +1 -1
  395. data/doc/Files/TwoFactorAuthenticationRequiredError.html +1 -1
  396. data/doc/Files/TwoFactorAuthenticationSetupExpiredError.html +1 -1
  397. data/doc/Files/TwoFactorAuthenticationUnsubscribedRecipientError.html +1 -1
  398. data/doc/Files/URI.html +1 -1
  399. data/doc/Files/UnrecognizedSortIndexError.html +1 -1
  400. data/doc/Files/UnsupportedCurrencyError.html +1 -1
  401. data/doc/Files/UnsupportedHttpResponseFormatError.html +1 -1
  402. data/doc/Files/UnsupportedMediaTypeError.html +1 -1
  403. data/doc/Files/UpdatesNotAllowedForRemotesError.html +1 -1
  404. data/doc/Files/UploadsUnavailableError.html +1 -1
  405. data/doc/Files/UsageByTopLevelDir.html +1 -1
  406. data/doc/Files/UsageDailySnapshot.html +1 -1
  407. data/doc/Files/UsageSnapshot.html +1 -1
  408. data/doc/Files/User.html +1 -1
  409. data/doc/Files/UserAdditionalEmailRecipient.html +1 -1
  410. data/doc/Files/UserCipherUse.html +1 -1
  411. data/doc/Files/UserIdInvalidError.html +1 -1
  412. data/doc/Files/UserIdOnUserEndpointError.html +1 -1
  413. data/doc/Files/UserIdWithoutSiteAdminError.html +1 -1
  414. data/doc/Files/UserLifecycleRule.html +1 -1
  415. data/doc/Files/UserNotFoundError.html +1 -1
  416. data/doc/Files/UserRequest.html +1 -1
  417. data/doc/Files/UserRequestsEnabledRequiredError.html +1 -1
  418. data/doc/Files/UserRequiredError.html +1 -1
  419. data/doc/Files/UserSecurityEvent.html +1 -1
  420. data/doc/Files/UserSftpClientUse.html +1 -1
  421. data/doc/Files/Util/LogSettings.html +1 -1
  422. data/doc/Files/Util.html +1 -1
  423. data/doc/Files/WebDavActionLog.html +1 -1
  424. data/doc/Files/WebhookTest.html +1 -1
  425. data/doc/Files/Workspace.html +1 -1
  426. data/doc/Files/WriteAndBundlePermissionRequiredError.html +1 -1
  427. data/doc/Files/WritePermissionRequiredError.html +1 -1
  428. data/doc/Files/ZipListEntry.html +1 -1
  429. data/doc/Files.html +116 -116
  430. data/doc/_index.html +314 -4
  431. data/doc/class_list.html +1 -1
  432. data/doc/file.README.html +1 -1
  433. data/doc/index.html +1 -1
  434. data/doc/method_list.html +4703 -2415
  435. data/doc/top-level-namespace.html +1 -1
  436. data/docs/file.md +346 -0
  437. data/lib/files.com/api.rb +6 -1
  438. data/lib/files.com/api_client.rb +220 -32
  439. data/lib/files.com/models/file.rb +124 -17
  440. data/lib/files.com/sizable_io.rb +1 -0
  441. data/lib/files.com/transfer/budgets.rb +123 -0
  442. data/lib/files.com/transfer/checkpoint.rb +113 -0
  443. data/lib/files.com/transfer/clock.rb +14 -0
  444. data/lib/files.com/transfer/controller.rb +549 -0
  445. data/lib/files.com/transfer/download_coordinator.rb +906 -0
  446. data/lib/files.com/transfer/errors.rb +100 -0
  447. data/lib/files.com/transfer/http_transport.rb +337 -0
  448. data/lib/files.com/transfer/job.rb +778 -0
  449. data/lib/files.com/transfer/options.rb +126 -0
  450. data/lib/files.com/transfer/policy.rb +91 -0
  451. data/lib/files.com/transfer/storage_retry.rb +169 -0
  452. data/lib/files.com/transfer/upload_coordinator.rb +657 -0
  453. data/lib/files.com/transfer/upload_plan.rb +157 -0
  454. data/lib/files.com.rb +13 -0
  455. data/spec/lib/api_client_spec.rb +125 -3
  456. data/spec/models/file_transfer_spec.rb +70 -4
  457. data/spec/support/transfer_server.rb +113 -14
  458. data/spec/transfer/adaptive_download_spec.rb +1102 -0
  459. data/spec/transfer/adaptive_upload_spec.rb +1602 -0
  460. data/spec/transfer/concurrency_controller_spec.rb +382 -0
  461. data/spec/workspace_id_spec.rb +19 -14
  462. metadata +59 -1
@@ -108,7 +108,7 @@
108
108
 
109
109
 
110
110
 
111
- <strong class="classes">Classes:</strong> <span class='object_link'><a href="ApiClient/RequestLogContext.html" title="Files::ApiClient::RequestLogContext (class)">RequestLogContext</a></span>
111
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="ApiClient/RequestLogContext.html" title="Files::ApiClient::RequestLogContext (class)">RequestLogContext</a></span>, <span class='object_link'><a href="ApiClient/TransferSettings.html" title="Files::ApiClient::TransferSettings (class)">TransferSettings</a></span>
112
112
 
113
113
 
114
114
  </p>
@@ -292,6 +292,28 @@
292
292
  <li class="public ">
293
293
  <span class="summary_signature">
294
294
 
295
+ <a href="#proxy_identity-class_method" title="proxy_identity (class method)">.<strong>proxy_identity</strong>(proxy) &#x21d2; Object </a>
296
+
297
+
298
+
299
+ </span>
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+ <span class="summary_desc"><div class='inline'><p>A Files.proxy value, a URL or a Hash of its uri, user and password, as one frozen [URL, user, password], its user and password included, or nil for none.</p></div></span>
310
+
311
+ </li>
312
+
313
+
314
+ <li class="public ">
315
+ <span class="summary_signature">
316
+
295
317
  <a href="#should_retry%3F-class_method" title="should_retry? (class method)">.<strong>should_retry?</strong>(error, num_retries) &#x21d2; Boolean </a>
296
318
 
297
319
 
@@ -314,6 +336,28 @@
314
336
  <li class="public ">
315
337
  <span class="summary_signature">
316
338
 
339
+ <a href="#single_attempt-class_method" title="single_attempt (class method)">.<strong>single_attempt</strong> &#x21d2; Object </a>
340
+
341
+
342
+
343
+ </span>
344
+
345
+
346
+
347
+
348
+
349
+
350
+
351
+
352
+
353
+ <span class="summary_desc"><div class='inline'><p>Runs the block with each transfer request this thread sends through remote_request sent once: a failure is logged as usual but neither retried nor converted, so Faraday's own error, with any response it got, reaches the caller.</p></div></span>
354
+
355
+ </li>
356
+
357
+
358
+ <li class="public ">
359
+ <span class="summary_signature">
360
+
317
361
  <a href="#sleep_time-class_method" title="sleep_time (class method)">.<strong>sleep_time</strong>(num_retries) &#x21d2; Object </a>
318
362
 
319
363
 
@@ -333,6 +377,72 @@
333
377
  </li>
334
378
 
335
379
 
380
+ <li class="public ">
381
+ <span class="summary_signature">
382
+
383
+ <a href="#transfer_settings-class_method" title="transfer_settings (class method)">.<strong>transfer_settings</strong> &#x21d2; Object </a>
384
+
385
+
386
+
387
+ </span>
388
+
389
+
390
+
391
+
392
+
393
+
394
+
395
+
396
+
397
+ <span class="summary_desc"><div class='inline'><p>The library-wide settings as they are now: frozen copies of Files.default_headers (a Proc is kept as it is, and still called for each request), Files.language and Files.app_info, the timeouts, Files.region_policy, and Files.region_handler, kept as it is.</p></div></span>
398
+
399
+ </li>
400
+
401
+
402
+ <li class="public ">
403
+ <span class="summary_signature">
404
+
405
+ <a href="#unchanged_default_conn%3F-class_method" title="unchanged_default_conn? (class method)">.<strong>unchanged_default_conn?</strong>(conn, proxy) &#x21d2; Boolean </a>
406
+
407
+
408
+
409
+ </span>
410
+
411
+
412
+
413
+
414
+
415
+
416
+
417
+
418
+
419
+ <span class="summary_desc"><div class='inline'><p>Whether conn is a connection build_default_conn made with proxy, as proxy_identity gives it (nil when it was given none, so it follows the proxy environment variables), with nothing about it changed since: the same middleware and adapter (the same objects, so neither another adapter nor one with a configuration block of its own), and the same TLS, request and proxy options, default headers and default parameters.</p></div></span>
420
+
421
+ </li>
422
+
423
+
424
+ <li class="public ">
425
+ <span class="summary_signature">
426
+
427
+ <a href="#user_agent_with_metadata-class_method" title="user_agent_with_metadata (class method)">.<strong>user_agent_with_metadata</strong>(identity, host_os: , ruby_engine: RUBY_ENGINE, ruby_version: RUBY_VERSION) &#x21d2; Object </a>
428
+
429
+
430
+
431
+ </span>
432
+
433
+
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+ <span class="summary_desc"><div class='inline'><p>The User-Agent the SDK sends with its own API requests: identity, the SDK's name and version and any app info, followed by one comment naming the coarse family of the operating system host_os (RbConfig's) names and the Ruby runtime, with ruby_version for CRuby, such as &quot;Files.com Ruby SDK v1.2.3 (files-sdk-meta/1; os=linux; runtime=ruby/3.4.4)&quot;.</p></div></span>
442
+
443
+ </li>
444
+
445
+
336
446
  </ul>
337
447
 
338
448
 
@@ -368,7 +478,29 @@
368
478
  <li class="public ">
369
479
  <span class="summary_signature">
370
480
 
371
- <a href="#execute_request-instance_method" title="#execute_request (instance method)">#<strong>execute_request</strong>(method, path, base_url: nil, api_key: nil, session_id: nil, workspace_id: nil, region_http_pairs: nil, headers: {}, params: {}, &amp;on_request_context) &#x21d2; Object </a>
481
+ <a href="#default_transfer_behavior%3F-instance_method" title="#default_transfer_behavior? (instance method)">#<strong>default_transfer_behavior?</strong> &#x21d2; Boolean </a>
482
+
483
+
484
+
485
+ </span>
486
+
487
+
488
+
489
+
490
+
491
+
492
+
493
+
494
+
495
+ <span class="summary_desc"><div class='inline'><p>Whether this client sends transfer requests just as the SDK's own default client does: an ApiClient itself, not a subclass or an object with methods of its own, with no logger or log level of its own.</p></div></span>
496
+
497
+ </li>
498
+
499
+
500
+ <li class="public ">
501
+ <span class="summary_signature">
502
+
503
+ <a href="#execute_request-instance_method" title="#execute_request (instance method)">#<strong>execute_request</strong>(method, path, base_url: nil, api_key: nil, session_id: nil, workspace_id: nil, region_http_pairs: nil, settings: nil, headers: {}, params: {}, &amp;on_request_context) &#x21d2; Object </a>
372
504
 
373
505
 
374
506
 
@@ -472,7 +604,7 @@
472
604
 
473
605
 
474
606
 
475
- <span class="summary_desc"><div class='inline'></div></span>
607
+ <span class="summary_desc"><div class='inline'><p>Sends a request to a transfer URL, such as a signed storage URL, through this client's connection, with its middleware, adapter, settings and logging.</p></div></span>
476
608
 
477
609
  </li>
478
610
 
@@ -502,6 +634,28 @@
502
634
  <li class="public ">
503
635
  <span class="summary_signature">
504
636
 
637
+ <a href="#resolved_workspace_id-instance_method" title="#resolved_workspace_id (instance method)">#<strong>resolved_workspace_id</strong> &#x21d2; Object </a>
638
+
639
+
640
+
641
+ </span>
642
+
643
+
644
+
645
+
646
+
647
+
648
+
649
+
650
+
651
+ <span class="summary_desc"><div class='inline'><p>The workspace_id option that names, for every later request, the workspace this client's requests name now when their own workspace_id is nil: its own, or Files.workspace_id, and &quot;&quot; for none.</p></div></span>
652
+
653
+ </li>
654
+
655
+
656
+ <li class="public ">
657
+ <span class="summary_signature">
658
+
505
659
  <a href="#stream_download-instance_method" title="#stream_download (instance method)">#<strong>stream_download</strong>(uri, io, range) &#x21d2; Object </a>
506
660
 
507
661
 
@@ -728,12 +882,17 @@ your own development servers only (see Files.region_http_pairs=).</p>
728
882
  102
729
883
  103
730
884
  104
731
- 105</pre>
885
+ 105
886
+ 106
887
+ 107
888
+ 108
889
+ 109</pre>
732
890
  </td>
733
891
  <td>
734
892
  <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 78</span>
735
893
 
736
894
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_build_default_conn'>build_default_conn</span><span class='lparen'>(</span><span class='label'>force_net_http:</span> <span class='kw'>false</span><span class='rparen'>)</span>
895
+ <span class='id identifier rubyid_proxy'>proxy</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_proxy'><span class='object_link'><a href="../Files.html#proxy-class_method" title="Files.proxy (method)">proxy</a></span></span>
737
896
  <span class='id identifier rubyid_conn'>conn</span> <span class='op'>=</span> <span class='const'>Faraday</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_builder'>builder</span><span class='op'>|</span>
738
897
  <span class='kw'>if</span> <span class='const'>Gem</span><span class='op'>::</span><span class='const'>Version</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='op'>::</span><span class='const'>VERSION</span><span class='rparen'>)</span> <span class='op'>&lt;</span> <span class='const'>Gem</span><span class='op'>::</span><span class='const'>Version</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>2.0.0</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='kw'>defined?</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='op'>::</span><span class='const'>Request</span><span class='op'>::</span><span class='const'>Multipart</span><span class='rparen'>)</span>
739
898
  <span class='kw'>begin</span>
@@ -756,8 +915,11 @@ your own development servers only (see Files.region_http_pairs=).</p>
756
915
  <span class='kw'>end</span>
757
916
  <span class='kw'>end</span>
758
917
 
759
- <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_proxy'>proxy</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_proxy'><span class='object_link'><a href="../Files.html#proxy-class_method" title="Files.proxy (method)">proxy</a></span></span> <span class='kw'>if</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_proxy'><span class='object_link'><a href="../Files.html#proxy-class_method" title="Files.proxy (method)">proxy</a></span></span>
918
+ <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_proxy'>proxy</span> <span class='op'>=</span> <span class='id identifier rubyid_proxy'>proxy</span> <span class='kw'>if</span> <span class='id identifier rubyid_proxy'>proxy</span>
760
919
  <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_ssl'>ssl</span><span class='period'>.</span><span class='id identifier rubyid_verify'>verify</span> <span class='op'>=</span> <span class='kw'>true</span>
920
+ <span class='comment'># How it was made, and with which proxy, so unchanged_default_conn? can tell whether anything about it has changed
921
+ </span> <span class='comment'># since.
922
+ </span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_instance_variable_set'>instance_variable_set</span><span class='lparen'>(</span><span class='symbol'>:@files_sdk_configuration</span><span class='comma'>,</span> <span class='lbracket'>[</span> <span class='id identifier rubyid_connection_configuration'>connection_configuration</span><span class='lparen'>(</span><span class='id identifier rubyid_conn'>conn</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_proxy_identity'>proxy_identity</span><span class='lparen'>(</span><span class='id identifier rubyid_proxy'>proxy</span><span class='rparen'>)</span> <span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span><span class='rparen'>)</span>
761
923
 
762
924
  <span class='id identifier rubyid_conn'>conn</span>
763
925
  <span class='kw'>end</span></pre>
@@ -894,6 +1056,48 @@ falling back to net_http.</p>
894
1056
  </td>
895
1057
  </tr>
896
1058
  </table>
1059
+ </div>
1060
+
1061
+ <div class="method_details ">
1062
+ <h3 class="signature " id="proxy_identity-class_method">
1063
+
1064
+ .<strong>proxy_identity</strong>(proxy) &#x21d2; <tt>Object</tt>
1065
+
1066
+
1067
+
1068
+
1069
+
1070
+ </h3><div class="docstring">
1071
+ <div class="discussion">
1072
+ <p>A Files.proxy value, a URL or a Hash of its uri, user and password, as one frozen [URL, user, password], its user
1073
+ and password included, or nil for none.</p>
1074
+
1075
+ </div>
1076
+ </div>
1077
+ <div class="tags">
1078
+
1079
+
1080
+ </div><table class="source_code">
1081
+ <tr>
1082
+ <td>
1083
+ <pre class="lines">
1084
+
1085
+
1086
+ 125
1087
+ 126
1088
+ 127
1089
+ 128</pre>
1090
+ </td>
1091
+ <td>
1092
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 125</span>
1093
+
1094
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_proxy_identity'>proxy_identity</span><span class='lparen'>(</span><span class='id identifier rubyid_proxy'>proxy</span><span class='rparen'>)</span>
1095
+ <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='id identifier rubyid_proxy'>proxy</span> <span class='op'>&amp;&amp;</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>ProxyOptions</span><span class='period'>.</span><span class='id identifier rubyid_from'>from</span><span class='lparen'>(</span><span class='id identifier rubyid_proxy'>proxy</span><span class='rparen'>)</span>
1096
+ <span class='id identifier rubyid_options'>options</span><span class='op'>&amp;.</span><span class='id identifier rubyid_uri'>uri</span> <span class='op'>&amp;&amp;</span> <span class='lbracket'>[</span> <span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_uri'>uri</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_user'>user</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_password'>password</span> <span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1097
+ <span class='kw'>end</span></pre>
1098
+ </td>
1099
+ </tr>
1100
+ </table>
897
1101
  </div>
898
1102
 
899
1103
  <div class="method_details ">
@@ -933,19 +1137,19 @@ falling back to net_http.</p>
933
1137
  <pre class="lines">
934
1138
 
935
1139
 
936
- 107
937
- 108
938
- 109
939
- 110
940
- 111
941
- 112
942
- 113
943
- 114
944
- 115
945
- 116</pre>
1140
+ 216
1141
+ 217
1142
+ 218
1143
+ 219
1144
+ 220
1145
+ 221
1146
+ 222
1147
+ 223
1148
+ 224
1149
+ 225</pre>
946
1150
  </td>
947
1151
  <td>
948
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 107</span>
1152
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 216</span>
949
1153
 
950
1154
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_should_retry?'>should_retry?</span><span class='lparen'>(</span><span class='id identifier rubyid_error'>error</span><span class='comma'>,</span> <span class='id identifier rubyid_num_retries'>num_retries</span><span class='rparen'>)</span>
951
1155
  <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>if</span> <span class='id identifier rubyid_num_retries'>num_retries</span> <span class='op'>&gt;=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_max_network_retries'><span class='object_link'><a href="../Files.html#max_network_retries-class_method" title="Files.max_network_retries (method)">max_network_retries</a></span></span>
@@ -960,6 +1164,56 @@ falling back to net_http.</p>
960
1164
  </td>
961
1165
  </tr>
962
1166
  </table>
1167
+ </div>
1168
+
1169
+ <div class="method_details ">
1170
+ <h3 class="signature " id="single_attempt-class_method">
1171
+
1172
+ .<strong>single_attempt</strong> &#x21d2; <tt>Object</tt>
1173
+
1174
+
1175
+
1176
+
1177
+
1178
+ </h3><div class="docstring">
1179
+ <div class="discussion">
1180
+ <p>Runs the block with each transfer request this thread sends through remote_request sent once: a failure is
1181
+ logged as usual but neither retried nor converted, so Faraday's own error, with any response it got, reaches
1182
+ the caller. An adaptive transfer sends its content requests through a caller's client this way, since it
1183
+ schedules and counts every retry itself.</p>
1184
+
1185
+ </div>
1186
+ </div>
1187
+ <div class="tags">
1188
+
1189
+
1190
+ </div><table class="source_code">
1191
+ <tr>
1192
+ <td>
1193
+ <pre class="lines">
1194
+
1195
+
1196
+ 139
1197
+ 140
1198
+ 141
1199
+ 142
1200
+ 143
1201
+ 144
1202
+ 145</pre>
1203
+ </td>
1204
+ <td>
1205
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 139</span>
1206
+
1207
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_single_attempt'>single_attempt</span>
1208
+ <span class='id identifier rubyid_previous'>previous</span> <span class='op'>=</span> <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='symbol'>:files_api_client_single_attempt</span><span class='rbracket'>]</span>
1209
+ <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='symbol'>:files_api_client_single_attempt</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='kw'>true</span>
1210
+ <span class='kw'>yield</span>
1211
+ <span class='kw'>ensure</span>
1212
+ <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='symbol'>:files_api_client_single_attempt</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_previous'>previous</span>
1213
+ <span class='kw'>end</span></pre>
1214
+ </td>
1215
+ </tr>
1216
+ </table>
963
1217
  </div>
964
1218
 
965
1219
  <div class="method_details ">
@@ -977,17 +1231,17 @@ falling back to net_http.</p>
977
1231
  <pre class="lines">
978
1232
 
979
1233
 
980
- 118
981
- 119
982
- 120
983
- 121
984
- 122
985
- 123
986
- 124
987
- 125</pre>
1234
+ 227
1235
+ 228
1236
+ 229
1237
+ 230
1238
+ 231
1239
+ 232
1240
+ 233
1241
+ 234</pre>
988
1242
  </td>
989
1243
  <td>
990
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 118</span>
1244
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 227</span>
991
1245
 
992
1246
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_sleep_time'>sleep_time</span><span class='lparen'>(</span><span class='id identifier rubyid_num_retries'>num_retries</span><span class='rparen'>)</span>
993
1247
  <span class='id identifier rubyid_sleep_seconds'>sleep_seconds</span> <span class='op'>=</span> <span class='lbracket'>[</span>
@@ -1002,36 +1256,109 @@ falling back to net_http.</p>
1002
1256
  </table>
1003
1257
  </div>
1004
1258
 
1259
+ <div class="method_details ">
1260
+ <h3 class="signature " id="transfer_settings-class_method">
1261
+
1262
+ .<strong>transfer_settings</strong> &#x21d2; <tt>Object</tt>
1263
+
1264
+
1265
+
1266
+
1267
+
1268
+ </h3><div class="docstring">
1269
+ <div class="discussion">
1270
+ <p>The library-wide settings as they are now: frozen copies of Files.default_headers (a Proc is kept as it is, and
1271
+ still called for each request), Files.language and Files.app_info, the timeouts, Files.region_policy, and
1272
+ Files.region_handler, kept as it is. A request given them uses them instead of the library-wide ones, and never
1273
+ falls back to Files.api_key or Files.session_id: a credential it was not given stays absent.</p>
1274
+
1005
1275
  </div>
1276
+ </div>
1277
+ <div class="tags">
1278
+
1006
1279
 
1007
- <div id="instance_method_details" class="method_details_list">
1008
- <h2>Instance Method Details</h2>
1280
+ </div><table class="source_code">
1281
+ <tr>
1282
+ <td>
1283
+ <pre class="lines">
1284
+
1285
+
1286
+ 155
1287
+ 156
1288
+ 157
1289
+ 158
1290
+ 159
1291
+ 160</pre>
1292
+ </td>
1293
+ <td>
1294
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 155</span>
1009
1295
 
1296
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_transfer_settings'>transfer_settings</span>
1297
+ <span class='const'><span class='object_link'><a href="ApiClient/TransferSettings.html" title="Files::ApiClient::TransferSettings (class)">TransferSettings</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="Files::ApiClient#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='label'>default_headers:</span> <span class='id identifier rubyid_settings_copy'>settings_copy</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_default_headers'><span class='object_link'><a href="../Files.html#default_headers-class_method" title="Files.default_headers (method)">default_headers</a></span></span><span class='rparen'>)</span><span class='comma'>,</span> <span class='label'>language:</span> <span class='id identifier rubyid_settings_copy'>settings_copy</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_language'><span class='object_link'><a href="../Files.html#language-class_method" title="Files.language (method)">language</a></span></span><span class='rparen'>)</span><span class='comma'>,</span> <span class='label'>app_info:</span> <span class='id identifier rubyid_settings_copy'>settings_copy</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_app_info'><span class='object_link'><a href="../Files.html#app_info-class_method" title="Files.app_info (method)">app_info</a></span></span><span class='rparen'>)</span><span class='comma'>,</span>
1298
+ <span class='label'>open_timeout:</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_open_timeout'><span class='object_link'><a href="../Files.html#open_timeout-class_method" title="Files.open_timeout (method)">open_timeout</a></span></span><span class='comma'>,</span> <span class='label'>read_timeout:</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_read_timeout'><span class='object_link'><a href="../Files.html#read_timeout-class_method" title="Files.read_timeout (method)">read_timeout</a></span></span><span class='comma'>,</span> <span class='label'>region_policy:</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_region_policy'><span class='object_link'><a href="../Files.html#region_policy-class_method" title="Files.region_policy (method)">region_policy</a></span></span><span class='comma'>,</span>
1299
+ <span class='label'>region_handler:</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_region_handler'><span class='object_link'><a href="../Files.html#region_handler-class_method" title="Files.region_handler (method)">region_handler</a></span></span>
1300
+ <span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>
1301
+ <span class='kw'>end</span></pre>
1302
+ </td>
1303
+ </tr>
1304
+ </table>
1305
+ </div>
1010
1306
 
1011
- <div class="method_details first">
1012
- <h3 class="signature first" id="cursor-instance_method">
1307
+ <div class="method_details ">
1308
+ <h3 class="signature " id="unchanged_default_conn?-class_method">
1013
1309
 
1014
- #<strong>cursor</strong> &#x21d2; <tt>Object</tt>
1310
+ .<strong>unchanged_default_conn?</strong>(conn, proxy) &#x21d2; <tt>Boolean</tt>
1015
1311
 
1016
1312
 
1017
1313
 
1018
1314
 
1019
1315
 
1020
- </h3><table class="source_code">
1316
+ </h3><div class="docstring">
1317
+ <div class="discussion">
1318
+ <p>Whether conn is a connection build_default_conn made with proxy, as proxy_identity gives it (nil when it was given
1319
+ none, so it follows the proxy environment variables), with nothing about it changed since: the same middleware and
1320
+ adapter (the same objects, so neither another adapter nor one with a configuration block of its own), and the same
1321
+ TLS, request and proxy options, default headers and default parameters. An adaptive transfer sends over its own
1322
+ connections, made with its own proxy, in place of only such a connection with that same proxy; through any other,
1323
+ such as one with a minimum TLS version or another proxy, it sends as that connection does.</p>
1324
+
1325
+ </div>
1326
+ </div>
1327
+ <div class="tags">
1328
+
1329
+ <p class="tag_title">Returns:</p>
1330
+ <ul class="return">
1331
+
1332
+ <li>
1333
+
1334
+
1335
+ <span class='type'>(<tt>Boolean</tt>)</span>
1336
+
1337
+
1338
+
1339
+ </li>
1340
+
1341
+ </ul>
1342
+
1343
+ </div><table class="source_code">
1021
1344
  <tr>
1022
1345
  <td>
1023
1346
  <pre class="lines">
1024
1347
 
1025
1348
 
1026
- 319
1027
- 320
1028
- 321</pre>
1349
+ 117
1350
+ 118
1351
+ 119
1352
+ 120
1353
+ 121</pre>
1029
1354
  </td>
1030
1355
  <td>
1031
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 319</span>
1356
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 117</span>
1032
1357
 
1033
- <span class='kw'>def</span> <span class='id identifier rubyid_cursor'>cursor</span>
1034
- <span class='ivar'>@last_response</span><span class='period'>.</span><span class='id identifier rubyid_http_headers'>http_headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>x-files-cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
1358
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_unchanged_default_conn?'>unchanged_default_conn?</span><span class='lparen'>(</span><span class='id identifier rubyid_conn'>conn</span><span class='comma'>,</span> <span class='id identifier rubyid_proxy'>proxy</span><span class='rparen'>)</span>
1359
+ <span class='kw'>return</span> <span class='kw'>false</span> <span class='kw'>unless</span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>Faraday</span><span class='op'>::</span><span class='const'>Connection</span><span class='rparen'>)</span>
1360
+
1361
+ <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_instance_variable_get'>instance_variable_get</span><span class='lparen'>(</span><span class='symbol'>:@files_sdk_configuration</span><span class='rparen'>)</span> <span class='op'>==</span> <span class='lbracket'>[</span> <span class='id identifier rubyid_connection_configuration'>connection_configuration</span><span class='lparen'>(</span><span class='id identifier rubyid_conn'>conn</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_proxy'>proxy</span> <span class='rbracket'>]</span>
1035
1362
  <span class='kw'>end</span></pre>
1036
1363
  </td>
1037
1364
  </tr>
@@ -1039,9 +1366,9 @@ falling back to net_http.</p>
1039
1366
  </div>
1040
1367
 
1041
1368
  <div class="method_details ">
1042
- <h3 class="signature " id="execute_request-instance_method">
1369
+ <h3 class="signature " id="user_agent_with_metadata-class_method">
1043
1370
 
1044
- #<strong>execute_request</strong>(method, path, base_url: nil, api_key: nil, session_id: nil, workspace_id: nil, region_http_pairs: nil, headers: {}, params: {}, &amp;on_request_context) &#x21d2; <tt>Object</tt>
1371
+ .<strong>user_agent_with_metadata</strong>(identity, host_os: , ruby_engine: RUBY_ENGINE, ruby_version: RUBY_VERSION) &#x21d2; <tt>Object</tt>
1045
1372
 
1046
1373
 
1047
1374
 
@@ -1049,10 +1376,15 @@ falling back to net_http.</p>
1049
1376
 
1050
1377
  </h3><div class="docstring">
1051
1378
  <div class="discussion">
1052
- <p>Returns the response and the API key and session ID the request used. <code>region_http_pairs</code>, such as the pairs a
1053
- returned record keeps, is used instead of this client's. The block, if given, receives the request's context once
1054
- its response has arrived: the regional origin a lockout region mismatch moved it to, or nil, and the frozen
1055
- region_http_pairs it used.</p>
1379
+ <p>The User-Agent the SDK sends with its own API requests: identity, the SDK's name and version and any app info,
1380
+ followed by one comment naming the coarse family of the operating system host_os (RbConfig's) names and the Ruby
1381
+ runtime, with ruby_version for CRuby, such as &quot;Files.com Ruby SDK v1.2.3 (files-sdk-meta/1; os=linux;
1382
+ runtime=ruby/3.4.4)&quot;. The comment carries nothing else: no host or user name, path, architecture or build. A
1383
+ version it cannot carry as given is left out rather than changed. When the whole User-Agent would be longer than
1384
+ 190 bytes, the version is left out first and then the whole comment, so identity is always sent as it is; an
1385
+ identity that is not printable ASCII, such as one whose app info is not, gets no comment. A User-Agent from
1386
+ Files.default_headers or a request's own headers is sent instead, exactly as given, and a transfer request
1387
+ (remote_request) sends only the headers it is given.</p>
1056
1388
 
1057
1389
  </div>
1058
1390
  </div>
@@ -1065,43 +1397,6 @@ region_http_pairs it used.</p>
1065
1397
  <pre class="lines">
1066
1398
 
1067
1399
 
1068
- 150
1069
- 151
1070
- 152
1071
- 153
1072
- 154
1073
- 155
1074
- 156
1075
- 157
1076
- 158
1077
- 159
1078
- 160
1079
- 161
1080
- 162
1081
- 163
1082
- 164
1083
- 165
1084
- 166
1085
- 167
1086
- 168
1087
- 169
1088
- 170
1089
- 171
1090
- 172
1091
- 173
1092
- 174
1093
- 175
1094
- 176
1095
- 177
1096
- 178
1097
- 179
1098
- 180
1099
- 181
1100
- 182
1101
- 183
1102
- 184
1103
- 185
1104
- 186
1105
1400
  187
1106
1401
  188
1107
1402
  189
@@ -1113,30 +1408,219 @@ region_http_pairs it used.</p>
1113
1408
  195
1114
1409
  196
1115
1410
  197
1116
- 198
1117
- 199
1118
- 200
1119
- 201
1120
- 202
1121
- 203
1122
- 204
1123
- 205
1124
- 206
1125
- 207
1126
- 208
1127
- 209
1128
- 210
1129
- 211
1130
- 212
1131
- 213</pre>
1411
+ 198</pre>
1412
+ </td>
1413
+ <td>
1414
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 187</span>
1415
+
1416
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_user_agent_with_metadata'>user_agent_with_metadata</span><span class='lparen'>(</span><span class='id identifier rubyid_identity'>identity</span><span class='comma'>,</span> <span class='label'>host_os:</span> <span class='const'>RbConfig</span><span class='op'>::</span><span class='const'>CONFIG</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>host_os</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='label'>ruby_engine:</span> <span class='const'>RUBY_ENGINE</span><span class='comma'>,</span> <span class='label'>ruby_version:</span> <span class='const'>RUBY_VERSION</span><span class='rparen'>)</span>
1417
+ <span class='kw'>return</span> <span class='id identifier rubyid_identity'>identity</span> <span class='kw'>unless</span> <span class='id identifier rubyid_identity'>identity</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_identity'>identity</span><span class='period'>.</span><span class='id identifier rubyid_ascii_only?'>ascii_only?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_identity'>identity</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\A[\x20-\x7e]+\z</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span>
1418
+
1419
+ <span class='id identifier rubyid_carried'>carried</span> <span class='op'>=</span> <span class='id identifier rubyid_ruby_engine'>ruby_engine</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>ruby</span><span class='tstring_end'>&quot;</span></span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_ruby_version'>ruby_version</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span><span class='lparen'>(</span><span class='const'>String</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_ruby_version'>ruby_version</span><span class='period'>.</span><span class='id identifier rubyid_ascii_only?'>ascii_only?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_ruby_version'>ruby_version</span><span class='period'>.</span><span class='id identifier rubyid_match?'>match?</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\A[0-9][A-Za-z0-9.+_-]{0,47}\z</span><span class='regexp_end'>/</span></span><span class='rparen'>)</span>
1420
+ <span class='id identifier rubyid_runtimes'>runtimes</span> <span class='op'>=</span> <span class='id identifier rubyid_carried'>carried</span> <span class='op'>?</span> <span class='lbracket'>[</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>ruby/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_ruby_version'>ruby_version</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>ruby</span><span class='tstring_end'>&quot;</span></span> <span class='rbracket'>]</span> <span class='op'>:</span> <span class='lbracket'>[</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>ruby</span><span class='tstring_end'>&quot;</span></span> <span class='rbracket'>]</span>
1421
+ <span class='id identifier rubyid_os'>os</span> <span class='op'>=</span> <span class='id identifier rubyid_user_agent_os'>user_agent_os</span><span class='lparen'>(</span><span class='id identifier rubyid_host_os'>host_os</span><span class='rparen'>)</span>
1422
+ <span class='id identifier rubyid_runtimes'>runtimes</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_runtime'>runtime</span><span class='op'>|</span>
1423
+ <span class='id identifier rubyid_metadata'>metadata</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> (</span><span class='embexpr_beg'>#{</span><span class='const'>USER_AGENT_METADATA_MARKER</span><span class='embexpr_end'>}</span><span class='tstring_content'>; os=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_os'>os</span><span class='embexpr_end'>}</span><span class='tstring_content'>; runtime=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_runtime'>runtime</span><span class='embexpr_end'>}</span><span class='tstring_content'>)</span><span class='tstring_end'>&quot;</span></span>
1424
+ <span class='kw'>return</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_identity'>identity</span><span class='embexpr_end'>}</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_metadata'>metadata</span><span class='embexpr_end'>}</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_bytesize'>bytesize</span> <span class='op'>&lt;=</span> <span class='const'>MAX_USER_AGENT_METADATA_BYTES</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_identity'>identity</span><span class='period'>.</span><span class='id identifier rubyid_bytesize'>bytesize</span> <span class='op'>+</span> <span class='id identifier rubyid_metadata'>metadata</span><span class='period'>.</span><span class='id identifier rubyid_bytesize'>bytesize</span> <span class='op'>&lt;=</span> <span class='const'>MAX_USER_AGENT_BYTES</span>
1425
+ <span class='kw'>end</span>
1426
+ <span class='id identifier rubyid_identity'>identity</span>
1427
+ <span class='kw'>end</span></pre>
1428
+ </td>
1429
+ </tr>
1430
+ </table>
1431
+ </div>
1432
+
1433
+ </div>
1434
+
1435
+ <div id="instance_method_details" class="method_details_list">
1436
+ <h2>Instance Method Details</h2>
1437
+
1438
+
1439
+ <div class="method_details first">
1440
+ <h3 class="signature first" id="cursor-instance_method">
1441
+
1442
+ #<strong>cursor</strong> &#x21d2; <tt>Object</tt>
1443
+
1444
+
1445
+
1446
+
1447
+
1448
+ </h3><table class="source_code">
1449
+ <tr>
1450
+ <td>
1451
+ <pre class="lines">
1452
+
1453
+
1454
+ 474
1455
+ 475
1456
+ 476</pre>
1457
+ </td>
1458
+ <td>
1459
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 474</span>
1460
+
1461
+ <span class='kw'>def</span> <span class='id identifier rubyid_cursor'>cursor</span>
1462
+ <span class='ivar'>@last_response</span><span class='period'>.</span><span class='id identifier rubyid_http_headers'>http_headers</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>x-files-cursor</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span>
1463
+ <span class='kw'>end</span></pre>
1464
+ </td>
1465
+ </tr>
1466
+ </table>
1467
+ </div>
1468
+
1469
+ <div class="method_details ">
1470
+ <h3 class="signature " id="default_transfer_behavior?-instance_method">
1471
+
1472
+ #<strong>default_transfer_behavior?</strong> &#x21d2; <tt>Boolean</tt>
1473
+
1474
+
1475
+
1476
+
1477
+
1478
+ </h3><div class="docstring">
1479
+ <div class="discussion">
1480
+ <p>Whether this client sends transfer requests just as the SDK's own default client does: an ApiClient itself, not
1481
+ a subclass or an object with methods of its own, with no logger or log level of its own. Only then may an
1482
+ adaptive transfer send its content requests over its own connections instead of through remote_request.</p>
1483
+
1484
+ </div>
1485
+ </div>
1486
+ <div class="tags">
1487
+
1488
+ <p class="tag_title">Returns:</p>
1489
+ <ul class="return">
1490
+
1491
+ <li>
1492
+
1493
+
1494
+ <span class='type'>(<tt>Boolean</tt>)</span>
1495
+
1496
+
1497
+
1498
+ </li>
1499
+
1500
+ </ul>
1501
+
1502
+ </div><table class="source_code">
1503
+ <tr>
1504
+ <td>
1505
+ <pre class="lines">
1506
+
1507
+
1508
+ 329
1509
+ 330
1510
+ 331</pre>
1132
1511
  </td>
1133
1512
  <td>
1134
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 150</span>
1513
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 329</span>
1135
1514
 
1136
- <span class='kw'>def</span> <span class='id identifier rubyid_execute_request'>execute_request</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>base_url:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>api_key:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>session_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>workspace_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>region_http_pairs:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>params:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_on_request_context'>on_request_context</span><span class='rparen'>)</span>
1515
+ <span class='kw'>def</span> <span class='id identifier rubyid_default_transfer_behavior?'>default_transfer_behavior?</span>
1516
+ <span class='id identifier rubyid_instance_of?'>instance_of?</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="" title="Files::ApiClient (class)">ApiClient</a></span></span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_singleton_methods'>singleton_methods</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@logger</span><span class='period'>.</span><span class='id identifier rubyid_equal?'>equal?</span><span class='lparen'>(</span><span class='const'>USE_GLOBAL</span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='ivar'>@log_level</span><span class='period'>.</span><span class='id identifier rubyid_equal?'>equal?</span><span class='lparen'>(</span><span class='const'>USE_GLOBAL</span><span class='rparen'>)</span>
1517
+ <span class='kw'>end</span></pre>
1518
+ </td>
1519
+ </tr>
1520
+ </table>
1521
+ </div>
1522
+
1523
+ <div class="method_details ">
1524
+ <h3 class="signature " id="execute_request-instance_method">
1525
+
1526
+ #<strong>execute_request</strong>(method, path, base_url: nil, api_key: nil, session_id: nil, workspace_id: nil, region_http_pairs: nil, settings: nil, headers: {}, params: {}, &amp;on_request_context) &#x21d2; <tt>Object</tt>
1527
+
1528
+
1529
+
1530
+
1531
+
1532
+ </h3><div class="docstring">
1533
+ <div class="discussion">
1534
+ <p>Returns the response and the API key and session ID the request used. <code>region_http_pairs</code>, such as the pairs a
1535
+ returned record keeps, is used instead of this client's. <code>settings</code>, an adaptive transfer's TransferSettings, is
1536
+ used instead of the library-wide default headers, language, app info, timeouts and region policy and handler, and
1537
+ with it a credential the request was not given is not looked up in Files.api_key or Files.session_id. The block,
1538
+ if given, receives the request's context once its response has arrived: the regional origin a lockout region
1539
+ mismatch moved it to, or nil, and the frozen region_http_pairs it used.</p>
1540
+
1541
+ </div>
1542
+ </div>
1543
+ <div class="tags">
1544
+
1545
+
1546
+ </div><table class="source_code">
1547
+ <tr>
1548
+ <td>
1549
+ <pre class="lines">
1550
+
1551
+
1552
+ 261
1553
+ 262
1554
+ 263
1555
+ 264
1556
+ 265
1557
+ 266
1558
+ 267
1559
+ 268
1560
+ 269
1561
+ 270
1562
+ 271
1563
+ 272
1564
+ 273
1565
+ 274
1566
+ 275
1567
+ 276
1568
+ 277
1569
+ 278
1570
+ 279
1571
+ 280
1572
+ 281
1573
+ 282
1574
+ 283
1575
+ 284
1576
+ 285
1577
+ 286
1578
+ 287
1579
+ 288
1580
+ 289
1581
+ 290
1582
+ 291
1583
+ 292
1584
+ 293
1585
+ 294
1586
+ 295
1587
+ 296
1588
+ 297
1589
+ 298
1590
+ 299
1591
+ 300
1592
+ 301
1593
+ 302
1594
+ 303
1595
+ 304
1596
+ 305
1597
+ 306
1598
+ 307
1599
+ 308
1600
+ 309
1601
+ 310
1602
+ 311
1603
+ 312
1604
+ 313
1605
+ 314
1606
+ 315
1607
+ 316
1608
+ 317
1609
+ 318
1610
+ 319
1611
+ 320
1612
+ 321
1613
+ 322
1614
+ 323
1615
+ 324</pre>
1616
+ </td>
1617
+ <td>
1618
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 261</span>
1619
+
1620
+ <span class='kw'>def</span> <span class='id identifier rubyid_execute_request'>execute_request</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='label'>base_url:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>api_key:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>session_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>workspace_id:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>region_http_pairs:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>settings:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>headers:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='label'>params:</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='op'>&amp;</span><span class='id identifier rubyid_on_request_context'>on_request_context</span><span class='rparen'>)</span>
1137
1621
  <span class='id identifier rubyid_base_url'>base_url</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_base_url'><span class='object_link'><a href="../Files.html#base_url-class_method" title="Files.base_url (method)">base_url</a></span></span>
1138
1622
  <span class='kw'>if</span> <span class='id identifier rubyid_api_key'>api_key</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1139
- <span class='id identifier rubyid_session_id'>session_id</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_session_id'><span class='object_link'><a href="../Files.html#session_id-class_method" title="Files.session_id (method)">session_id</a></span></span>
1623
+ <span class='id identifier rubyid_session_id'>session_id</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_session_id'><span class='object_link'><a href="../Files.html#session_id-class_method" title="Files.session_id (method)">session_id</a></span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_settings'>settings</span>
1140
1624
  <span class='kw'>else</span>
1141
1625
  <span class='id identifier rubyid_session_id'>session_id</span> <span class='op'>=</span> <span class='kw'>nil</span>
1142
1626
  <span class='kw'>end</span>
@@ -1145,7 +1629,7 @@ region_http_pairs it used.</p>
1145
1629
  <span class='kw'>if</span> <span class='id identifier rubyid_session_id'>session_id</span> <span class='kw'>and</span> <span class='id identifier rubyid_session_id'>session_id</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span>
1146
1630
  <span class='id identifier rubyid_check_session_id!'>check_session_id!</span><span class='lparen'>(</span><span class='id identifier rubyid_session_id'>session_id</span><span class='rparen'>)</span>
1147
1631
  <span class='kw'>elsif</span> <span class='id identifier rubyid_path'>path</span> <span class='op'>!~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\/sessions</span><span class='regexp_end'>/</span></span> <span class='comment'># TODO: automate this to refer to any unauthenticated endpoint
1148
- </span> <span class='id identifier rubyid_api_key'>api_key</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_api_key'><span class='object_link'><a href="../Files.html#api_key-class_method" title="Files.api_key (method)">api_key</a></span></span>
1632
+ </span> <span class='id identifier rubyid_api_key'>api_key</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_api_key'><span class='object_link'><a href="../Files.html#api_key-class_method" title="Files.api_key (method)">api_key</a></span></span> <span class='kw'>unless</span> <span class='id identifier rubyid_settings'>settings</span>
1149
1633
  <span class='id identifier rubyid_check_api_key!'>check_api_key!</span><span class='lparen'>(</span><span class='id identifier rubyid_api_key'>api_key</span><span class='rparen'>)</span>
1150
1634
  <span class='kw'>end</span>
1151
1635
 
@@ -1158,7 +1642,7 @@ region_http_pairs it used.</p>
1158
1642
  <span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_params'>params</span>
1159
1643
  <span class='kw'>end</span>
1160
1644
 
1161
- <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='id identifier rubyid_request_headers'>request_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_api_key'>api_key</span><span class='comma'>,</span> <span class='id identifier rubyid_session_id'>session_id</span><span class='comma'>,</span> <span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_workspace_id'>workspace_id</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_update'>update</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1645
+ <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='id identifier rubyid_request_headers'>request_headers</span><span class='lparen'>(</span><span class='id identifier rubyid_api_key'>api_key</span><span class='comma'>,</span> <span class='id identifier rubyid_session_id'>session_id</span><span class='comma'>,</span> <span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_workspace_id'>workspace_id</span><span class='comma'>,</span> <span class='id identifier rubyid_settings'>settings</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_update'>update</span><span class='lparen'>(</span><span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span>
1162
1646
  <span class='id identifier rubyid_url'>url</span> <span class='op'>=</span> <span class='id identifier rubyid_api_url'>api_url</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_base_url'>base_url</span><span class='rparen'>)</span>
1163
1647
 
1164
1648
  <span class='id identifier rubyid_context'>context</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="ApiClient/RequestLogContext.html" title="Files::ApiClient::RequestLogContext (class)">RequestLogContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="Files::ApiClient#initialize (method)">new</a></span></span>
@@ -1174,15 +1658,15 @@ region_http_pairs it used.</p>
1174
1658
  <span class='comment'># Fixed before the request starts, so later changes to the caller&#39;s or the library-wide pairs cannot affect it.
1175
1659
  </span> <span class='id identifier rubyid_http_pairs'>http_pairs</span> <span class='op'>=</span> <span class='id identifier rubyid_region_http_pairs'>region_http_pairs</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_region_http_pairs'>region_http_pairs</span> <span class='op'>:</span> <span class='const'><span class='object_link'><a href="Util.html" title="Files::Util (module)">Util</a></span></span><span class='period'>.</span><span class='id identifier rubyid_checked_region_http_pairs'><span class='object_link'><a href="Util.html#checked_region_http_pairs-class_method" title="Files::Util.checked_region_http_pairs (method)">checked_region_http_pairs</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_region_http_pairs'>region_http_pairs</span><span class='rparen'>)</span>
1176
1660
  <span class='id identifier rubyid_relocate'>relocate</span> <span class='op'>=</span> <span class='id identifier rubyid_lambda'>lambda</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_error_response'>error_response</span><span class='op'>|</span>
1177
- <span class='id identifier rubyid_regional_base_url'>regional_base_url</span> <span class='op'>=</span> <span class='id identifier rubyid_region_continuation_base_url'>region_continuation_base_url</span><span class='lparen'>(</span><span class='id identifier rubyid_error_response'>error_response</span><span class='comma'>,</span> <span class='id identifier rubyid_base_url'>base_url</span><span class='comma'>,</span> <span class='id identifier rubyid_body'>body</span><span class='comma'>,</span> <span class='id identifier rubyid_http_pairs'>http_pairs</span><span class='rparen'>)</span>
1661
+ <span class='id identifier rubyid_regional_base_url'>regional_base_url</span> <span class='op'>=</span> <span class='id identifier rubyid_region_continuation_base_url'>region_continuation_base_url</span><span class='lparen'>(</span><span class='id identifier rubyid_error_response'>error_response</span><span class='comma'>,</span> <span class='id identifier rubyid_base_url'>base_url</span><span class='comma'>,</span> <span class='id identifier rubyid_body'>body</span><span class='comma'>,</span> <span class='id identifier rubyid_http_pairs'>http_pairs</span><span class='comma'>,</span> <span class='id identifier rubyid_settings'>settings</span><span class='rparen'>)</span>
1178
1662
  <span class='id identifier rubyid_url'>url</span> <span class='op'>=</span> <span class='id identifier rubyid_api_url'>api_url</span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_regional_base_url'>regional_base_url</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_regional_base_url'>regional_base_url</span>
1179
1663
  <span class='id identifier rubyid_regional_base_url'>regional_base_url</span>
1180
1664
  <span class='kw'>end</span>
1181
1665
 
1182
1666
  <span class='id identifier rubyid_http_resp'>http_resp</span> <span class='op'>=</span> <span class='id identifier rubyid_execute_request_with_rescues'>execute_request_with_rescues</span><span class='lparen'>(</span><span class='id identifier rubyid_base_url'>base_url</span><span class='comma'>,</span> <span class='id identifier rubyid_context'>context</span><span class='comma'>,</span> <span class='label'>relocate:</span> <span class='id identifier rubyid_relocate'>relocate</span><span class='rparen'>)</span> <span class='kw'>do</span>
1183
1667
  <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_run_request'>run_request</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_body'>body</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_req'>req</span><span class='op'>|</span>
1184
- <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_open_timeout'>open_timeout</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_open_timeout'><span class='object_link'><a href="../Files.html#open_timeout-class_method" title="Files.open_timeout (method)">open_timeout</a></span></span>
1185
- <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_read_timeout'><span class='object_link'><a href="../Files.html#read_timeout-class_method" title="Files.read_timeout (method)">read_timeout</a></span></span>
1668
+ <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_open_timeout'>open_timeout</span> <span class='op'>=</span> <span class='id identifier rubyid_setting'>setting</span><span class='lparen'>(</span><span class='id identifier rubyid_settings'>settings</span><span class='comma'>,</span> <span class='symbol'>:open_timeout</span><span class='rparen'>)</span>
1669
+ <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span> <span class='op'>=</span> <span class='id identifier rubyid_setting'>setting</span><span class='lparen'>(</span><span class='id identifier rubyid_settings'>settings</span><span class='comma'>,</span> <span class='symbol'>:read_timeout</span><span class='rparen'>)</span>
1186
1670
  <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='id identifier rubyid_query_params'>query_params</span> <span class='kw'>unless</span> <span class='id identifier rubyid_query_params'>query_params</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
1187
1671
  <span class='kw'>end</span>
1188
1672
  <span class='kw'>end</span>
@@ -1228,63 +1712,65 @@ after count together.</p>
1228
1712
  <pre class="lines">
1229
1713
 
1230
1714
 
1231
- 483
1232
- 484
1233
- 485
1234
- 486
1235
- 487
1236
- 488
1237
- 489
1238
- 490
1239
- 491
1240
- 492
1241
- 493
1242
- 494
1243
- 495
1244
- 496
1245
- 497
1246
- 498
1247
- 499
1248
- 500
1249
- 501
1250
- 502
1251
- 503
1252
- 504
1253
- 505
1254
- 506
1255
- 507
1256
- 508
1257
- 509
1258
- 510
1259
- 511
1260
- 512
1261
- 513
1262
- 514
1263
- 515
1264
- 516
1265
- 517
1266
- 518
1267
- 519
1268
- 520
1269
- 521
1270
- 522
1271
- 523
1272
- 524
1273
- 525
1274
- 526
1275
- 527
1276
- 528
1277
- 529
1278
- 530
1279
- 531
1280
- 532
1281
- 533
1282
- 534
1283
- 535
1284
- 536</pre>
1715
+ 640
1716
+ 641
1717
+ 642
1718
+ 643
1719
+ 644
1720
+ 645
1721
+ 646
1722
+ 647
1723
+ 648
1724
+ 649
1725
+ 650
1726
+ 651
1727
+ 652
1728
+ 653
1729
+ 654
1730
+ 655
1731
+ 656
1732
+ 657
1733
+ 658
1734
+ 659
1735
+ 660
1736
+ 661
1737
+ 662
1738
+ 663
1739
+ 664
1740
+ 665
1741
+ 666
1742
+ 667
1743
+ 668
1744
+ 669
1745
+ 670
1746
+ 671
1747
+ 672
1748
+ 673
1749
+ 674
1750
+ 675
1751
+ 676
1752
+ 677
1753
+ 678
1754
+ 679
1755
+ 680
1756
+ 681
1757
+ 682
1758
+ 683
1759
+ 684
1760
+ 685
1761
+ 686
1762
+ 687
1763
+ 688
1764
+ 689
1765
+ 690
1766
+ 691
1767
+ 692
1768
+ 693
1769
+ 694
1770
+ 695</pre>
1285
1771
  </td>
1286
1772
  <td>
1287
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 483</span>
1773
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 640</span>
1288
1774
 
1289
1775
  <span class='kw'>def</span> <span class='id identifier rubyid_execute_request_with_rescues'>execute_request_with_rescues</span><span class='lparen'>(</span><span class='id identifier rubyid_base_url'>base_url</span><span class='comma'>,</span> <span class='id identifier rubyid_context'>context</span><span class='comma'>,</span> <span class='label'>skip_body_logging:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='label'>is_transfer:</span> <span class='kw'>false</span><span class='comma'>,</span> <span class='label'>relocate:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1290
1776
  <span class='id identifier rubyid_num_retries'>num_retries</span> <span class='op'>=</span> <span class='int'>0</span>
@@ -1305,13 +1791,15 @@ after count together.</p>
1305
1791
  <span class='id identifier rubyid_log_response_error'>log_response_error</span><span class='lparen'>(</span><span class='id identifier rubyid_error_context'>error_context</span><span class='comma'>,</span> <span class='id identifier rubyid_request_start'>request_start</span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span><span class='rparen'>)</span>
1306
1792
  <span class='kw'>end</span>
1307
1793
 
1308
- <span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_should_retry?'>should_retry?</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='comma'>,</span> <span class='id identifier rubyid_num_retries'>num_retries</span><span class='rparen'>)</span>
1794
+ <span class='id identifier rubyid_single_attempt'>single_attempt</span> <span class='op'>=</span> <span class='id identifier rubyid_is_transfer'>is_transfer</span> <span class='op'>&amp;&amp;</span> <span class='const'>Thread</span><span class='period'>.</span><span class='id identifier rubyid_current'>current</span><span class='lbracket'>[</span><span class='symbol'>:files_api_client_single_attempt</span><span class='rbracket'>]</span>
1795
+ <span class='kw'>if</span> <span class='op'>!</span><span class='id identifier rubyid_single_attempt'>single_attempt</span> <span class='op'>&amp;&amp;</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_should_retry?'>should_retry?</span><span class='lparen'>(</span><span class='id identifier rubyid_e'>e</span><span class='comma'>,</span> <span class='id identifier rubyid_num_retries'>num_retries</span><span class='rparen'>)</span>
1309
1796
  <span class='id identifier rubyid_num_retries'>num_retries</span> <span class='op'>+=</span> <span class='int'>1</span>
1310
1797
  <span class='id identifier rubyid_wait_seconds'>wait_seconds</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_sleep_time'>sleep_time</span><span class='lparen'>(</span><span class='id identifier rubyid_num_retries'>num_retries</span><span class='rparen'>)</span>
1311
1798
  <span class='id identifier rubyid_log_retry'>log_retry</span><span class='lparen'>(</span><span class='id identifier rubyid_context'>context</span><span class='comma'>,</span> <span class='id identifier rubyid_num_retries'>num_retries</span><span class='comma'>,</span> <span class='id identifier rubyid_e'>e</span><span class='comma'>,</span> <span class='id identifier rubyid_wait_seconds'>wait_seconds</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_is_transfer'>is_transfer</span>
1312
1799
  <span class='id identifier rubyid_sleep'>sleep</span> <span class='id identifier rubyid_wait_seconds'>wait_seconds</span>
1313
1800
  <span class='kw'>retry</span>
1314
1801
  <span class='kw'>end</span>
1802
+ <span class='id identifier rubyid_raise'>raise</span> <span class='kw'>if</span> <span class='id identifier rubyid_single_attempt'>single_attempt</span>
1315
1803
 
1316
1804
  <span class='const'><span class='object_link'><a href="Util.html" title="Files::Util (module)">Util</a></span></span><span class='period'>.</span><span class='id identifier rubyid_log_debug'><span class='object_link'><a href="Util.html#log_debug-class_method" title="Files::Util.log_debug (method)">log_debug</a></span></span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Transfer error details</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>error_message:</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_is_transfer'>is_transfer</span>
1317
1805
 
@@ -1370,12 +1858,12 @@ own: the client's own, or Files.region_http_pairs.</p>
1370
1858
  <pre class="lines">
1371
1859
 
1372
1860
 
1373
- 142
1374
- 143
1375
- 144</pre>
1861
+ 251
1862
+ 252
1863
+ 253</pre>
1376
1864
  </td>
1377
1865
  <td>
1378
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 142</span>
1866
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 251</span>
1379
1867
 
1380
1868
  <span class='kw'>def</span> <span class='id identifier rubyid_region_http_pairs'>region_http_pairs</span>
1381
1869
  <span class='ivar'>@region_http_pairs</span><span class='period'>.</span><span class='id identifier rubyid_equal?'>equal?</span><span class='lparen'>(</span><span class='const'>USE_GLOBAL</span><span class='rparen'>)</span> <span class='op'>?</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_region_http_pairs'><span class='object_link'><a href="../Files.html#region_http_pairs-class_method" title="Files.region_http_pairs (method)">region_http_pairs</a></span></span> <span class='op'>:</span> <span class='ivar'>@region_http_pairs</span>
@@ -1394,40 +1882,59 @@ own: the client's own, or Files.region_http_pairs.</p>
1394
1882
 
1395
1883
 
1396
1884
 
1397
- </h3><table class="source_code">
1885
+ </h3><div class="docstring">
1886
+ <div class="discussion">
1887
+ <p>Sends a request to a transfer URL, such as a signed storage URL, through this client's connection, with its
1888
+ middleware, adapter, settings and logging. The URL's query reaches the adapter as URI parses it (SignedQuery): the
1889
+ request's params, the connection's default ones included, are not added to it, unlike an API request's. URI keeps
1890
+ its order, its percent escapes and the characters a signed URL's query uses, so such a query arrives exactly as
1891
+ given, as its signature needs; it escapes others, such as a space, and drops tabs and line breaks. A URL URI cannot
1892
+ parse, as one with %zz in its query or a character outside ASCII, is left to Faraday as it is, which refuses it
1893
+ or sends its query decoded and encoded again, as it does any params.</p>
1894
+
1895
+ </div>
1896
+ </div>
1897
+ <div class="tags">
1898
+
1899
+
1900
+ </div><table class="source_code">
1398
1901
  <tr>
1399
1902
  <td>
1400
1903
  <pre class="lines">
1401
1904
 
1402
1905
 
1403
- 215
1404
- 216
1405
- 217
1406
- 218
1407
- 219
1408
- 220
1409
- 221
1410
- 222
1411
- 223
1412
- 224
1413
- 225
1414
- 226
1415
- 227
1416
- 228</pre>
1906
+ 348
1907
+ 349
1908
+ 350
1909
+ 351
1910
+ 352
1911
+ 353
1912
+ 354
1913
+ 355
1914
+ 356
1915
+ 357
1916
+ 358
1917
+ 359
1918
+ 360
1919
+ 361
1920
+ 362
1921
+ 363</pre>
1417
1922
  </td>
1418
1923
  <td>
1419
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 215</span>
1924
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 348</span>
1420
1925
 
1421
1926
  <span class='kw'>def</span> <span class='id identifier rubyid_remote_request'>remote_request</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1422
1927
  <span class='id identifier rubyid_context'>context</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="ApiClient/RequestLogContext.html" title="Files::ApiClient::RequestLogContext (class)">RequestLogContext</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="#initialize-instance_method" title="Files::ApiClient#initialize (method)">new</a></span></span>
1423
1928
  <span class='id identifier rubyid_context'>context</span><span class='period'>.</span><span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='id identifier rubyid_method'>method</span>
1424
1929
  <span class='id identifier rubyid_context'>context</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>[transfer]</span><span class='tstring_end'>&quot;</span></span>
1425
1930
  <span class='const'><span class='object_link'><a href="Util.html" title="Files::Util (module)">Util</a></span></span><span class='period'>.</span><span class='id identifier rubyid_log_debug'><span class='object_link'><a href="Util.html#log_debug-class_method" title="Files::Util.log_debug (method)">log_debug</a></span></span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Transfer request</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='label'>method:</span> <span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='label'>url:</span> <span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1931
+ <span class='id identifier rubyid_query'>query</span> <span class='op'>=</span> <span class='id identifier rubyid_transfer_query'>transfer_query</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='rparen'>)</span>
1426
1932
 
1427
1933
  <span class='id identifier rubyid_execute_request_with_rescues'>execute_request_with_rescues</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_base_url'><span class='object_link'><a href="../Files.html#base_url-class_method" title="Files.base_url (method)">base_url</a></span></span><span class='comma'>,</span> <span class='id identifier rubyid_context'>context</span><span class='comma'>,</span> <span class='label'>skip_body_logging:</span> <span class='kw'>true</span><span class='comma'>,</span> <span class='label'>is_transfer:</span> <span class='kw'>true</span><span class='rparen'>)</span> <span class='kw'>do</span>
1428
1934
  <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_run_request'>run_request</span><span class='lparen'>(</span><span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_body'>body</span><span class='comma'>,</span> <span class='id identifier rubyid_headers'>headers</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_req'>req</span><span class='op'>|</span>
1429
1935
  <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_open_timeout'>open_timeout</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_open_timeout'><span class='object_link'><a href="../Files.html#open_timeout-class_method" title="Files.open_timeout (method)">open_timeout</a></span></span>
1430
1936
  <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_timeout'>timeout</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../Files.html" title="Files (module)">Files</a></span></span><span class='period'>.</span><span class='id identifier rubyid_read_timeout'><span class='object_link'><a href="../Files.html#read_timeout-class_method" title="Files.read_timeout (method)">read_timeout</a></span></span>
1937
+ <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_params_encoder'>params_encoder</span> <span class='op'>=</span> <span class='const'>SignedQuery</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_query'>query</span><span class='comma'>,</span> <span class='id identifier rubyid_req'>req</span><span class='period'>.</span><span class='id identifier rubyid_options'>options</span><span class='period'>.</span><span class='id identifier rubyid_params_encoder'>params_encoder</span> <span class='op'>||</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>Utils</span><span class='period'>.</span><span class='id identifier rubyid_default_params_encoder'>default_params_encoder</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_query'>query</span>
1431
1938
  <span class='kw'>yield</span><span class='lparen'>(</span><span class='id identifier rubyid_req'>req</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_block_given?'>block_given?</span>
1432
1939
  <span class='kw'>end</span>
1433
1940
  <span class='kw'>end</span>
@@ -1452,21 +1959,21 @@ own: the client's own, or Files.region_http_pairs.</p>
1452
1959
  <pre class="lines">
1453
1960
 
1454
1961
 
1455
- 127
1456
- 128
1457
- 129
1458
- 130
1459
- 131
1460
- 132
1461
- 133
1462
- 134
1463
- 135
1464
- 136
1465
- 137
1466
- 138</pre>
1962
+ 236
1963
+ 237
1964
+ 238
1965
+ 239
1966
+ 240
1967
+ 241
1968
+ 242
1969
+ 243
1970
+ 244
1971
+ 245
1972
+ 246
1973
+ 247</pre>
1467
1974
  </td>
1468
1975
  <td>
1469
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 127</span>
1976
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 236</span>
1470
1977
 
1471
1978
  <span class='kw'>def</span> <span class='id identifier rubyid_request'>request</span>
1472
1979
  <span class='ivar'>@last_response</span> <span class='op'>=</span> <span class='kw'>nil</span>
@@ -1483,6 +1990,49 @@ own: the client's own, or Files.region_http_pairs.</p>
1483
1990
  </td>
1484
1991
  </tr>
1485
1992
  </table>
1993
+ </div>
1994
+
1995
+ <div class="method_details ">
1996
+ <h3 class="signature " id="resolved_workspace_id-instance_method">
1997
+
1998
+ #<strong>resolved_workspace_id</strong> &#x21d2; <tt>Object</tt>
1999
+
2000
+
2001
+
2002
+
2003
+
2004
+ </h3><div class="docstring">
2005
+ <div class="discussion">
2006
+ <p>The workspace_id option that names, for every later request, the workspace this client's requests name now when
2007
+ their own workspace_id is nil: its own, or Files.workspace_id, and &quot;&quot; for none. An adaptive upload fixes it as it
2008
+ begins, so a later change to Files.workspace_id cannot move it.</p>
2009
+
2010
+ </div>
2011
+ </div>
2012
+ <div class="tags">
2013
+
2014
+
2015
+ </div><table class="source_code">
2016
+ <tr>
2017
+ <td>
2018
+ <pre class="lines">
2019
+
2020
+
2021
+ 336
2022
+ 337
2023
+ 338
2024
+ 339</pre>
2025
+ </td>
2026
+ <td>
2027
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 336</span>
2028
+
2029
+ <span class='kw'>def</span> <span class='id identifier rubyid_resolved_workspace_id'>resolved_workspace_id</span>
2030
+ <span class='id identifier rubyid_workspace_id'>workspace_id</span> <span class='op'>=</span> <span class='id identifier rubyid_default_workspace_id'>default_workspace_id</span>
2031
+ <span class='id identifier rubyid_workspace_id'>workspace_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span> <span class='op'>:</span> <span class='id identifier rubyid_workspace_id'>workspace_id</span>
2032
+ <span class='kw'>end</span></pre>
2033
+ </td>
2034
+ </tr>
2035
+ </table>
1486
2036
  </div>
1487
2037
 
1488
2038
  <div class="method_details ">
@@ -1500,24 +2050,26 @@ own: the client's own, or Files.region_http_pairs.</p>
1500
2050
  <pre class="lines">
1501
2051
 
1502
2052
 
1503
- 230
1504
- 231
1505
- 232
1506
- 233
1507
- 234
1508
- 235
1509
- 236
1510
- 237
1511
- 238</pre>
2053
+ 373
2054
+ 374
2055
+ 375
2056
+ 376
2057
+ 377
2058
+ 378
2059
+ 379
2060
+ 380
2061
+ 381
2062
+ 382</pre>
1512
2063
  </td>
1513
2064
  <td>
1514
- <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 230</span>
2065
+ <pre class="code"><span class="info file"># File 'lib/files.com/api_client.rb', line 373</span>
1515
2066
 
1516
2067
  <span class='kw'>def</span> <span class='id identifier rubyid_stream_download'>stream_download</span><span class='lparen'>(</span><span class='id identifier rubyid_uri'>uri</span><span class='comma'>,</span> <span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_range'>range</span><span class='rparen'>)</span>
1517
2068
  <span class='kw'>if</span> <span class='id identifier rubyid_conn'>conn</span><span class='period'>.</span><span class='id identifier rubyid_adapter'>adapter</span> <span class='op'>==</span> <span class='const'>Faraday</span><span class='op'>::</span><span class='const'>Adapter</span><span class='op'>::</span><span class='const'>NetHttp</span>
1518
2069
  <span class='id identifier rubyid_stream_download_with_net_http'>stream_download_with_net_http</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="URI.html" title="Files::URI (module)">URI</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_uri'>uri</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_range'>range</span><span class='rparen'>)</span>
1519
2070
  <span class='kw'>else</span>
1520
2071
  <span class='id identifier rubyid_response'>response</span> <span class='op'>=</span> <span class='id identifier rubyid_remote_request'>remote_request</span><span class='lparen'>(</span><span class='symbol'>:get</span><span class='comma'>,</span> <span class='id identifier rubyid_uri'>uri</span><span class='rparen'>)</span>
2072
+ <span class='id identifier rubyid_reject_frontend_response'>reject_frontend_response</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_headers'>headers</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="Transfer.html" title="Files::Transfer (module)">Transfer</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Transfer/StorageRetry.html" title="Files::Transfer::StorageRetry (module)">StorageRetry</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Transfer/StorageRetry.html#FRONTEND_HEADER-constant" title="Files::Transfer::StorageRetry::FRONTEND_HEADER (constant)">FRONTEND_HEADER</a></span></span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_io'>io</span><span class='rparen'>)</span>
1521
2073
  <span class='id identifier rubyid_io'>io</span><span class='period'>.</span><span class='id identifier rubyid_fulfill_content_length'>fulfill_content_length</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_content_length'>content_length</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_io'>io</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span><span class='lparen'>(</span><span class='symbol'>:fulfill_content_length</span><span class='rparen'>)</span>
1522
2074
  <span class='id identifier rubyid_io'>io</span><span class='period'>.</span><span class='id identifier rubyid_write'>write</span><span class='lparen'>(</span><span class='id identifier rubyid_response'>response</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
1523
2075
  <span class='kw'>end</span>
@@ -1532,7 +2084,7 @@ own: the client's own, or Files.region_http_pairs.</p>
1532
2084
  </div>
1533
2085
 
1534
2086
  <div id="footer">
1535
- Generated on Tue Nov 3 14:26:12 2026 by
2087
+ Generated on Tue Nov 3 18:03:57 2026 by
1536
2088
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1537
2089
  0.9.45 (ruby-4.0.9).
1538
2090
  </div>