files.com 1.1.813 → 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.
- checksums.yaml +4 -4
- data/_VERSION +1 -1
- data/doc/Files/APIConnectionError.html +1 -1
- data/doc/Files/APIError.html +1 -1
- data/doc/Files/AccountAlreadyExistsError.html +1 -1
- data/doc/Files/AccountLineItem.html +1 -1
- data/doc/Files/AccountOverdueError.html +1 -1
- data/doc/Files/Action.html +1 -1
- data/doc/Files/ActionLog.html +1 -1
- data/doc/Files/ActionNotificationExport.html +1 -1
- data/doc/Files/ActionNotificationExportResult.html +1 -1
- data/doc/Files/AdditionalAuthenticationRequiredError.html +1 -1
- data/doc/Files/AgentNode.html +1 -1
- data/doc/Files/AgentNodeConnection.html +1 -1
- data/doc/Files/AgentNodeInstance.html +1 -1
- data/doc/Files/AgentPushUpdate.html +1 -1
- data/doc/Files/AgentPushUpdateBlockedError.html +1 -1
- data/doc/Files/AgentUnavailableError.html +1 -1
- data/doc/Files/AgentUpgradeRequiredError.html +1 -1
- data/doc/Files/AiAssistantPersonality.html +1 -1
- data/doc/Files/AiTask.html +1 -1
- data/doc/Files/AiTaskCannotBeRunManuallyError.html +1 -1
- data/doc/Files/AlreadyCompletedError.html +1 -1
- data/doc/Files/Api.html +20 -13
- data/doc/Files/ApiClient/RequestLogContext.html +29 -29
- data/doc/Files/ApiClient/TransferSettings.html +721 -0
- data/doc/Files/ApiClient.html +756 -204
- data/doc/Files/ApiKey.html +1 -1
- data/doc/Files/ApiKeyIsDisabledError.html +1 -1
- data/doc/Files/ApiKeyIsPathRestrictedError.html +1 -1
- data/doc/Files/ApiKeyNotFoundError.html +1 -1
- data/doc/Files/ApiKeyOnlyForDesktopAppError.html +1 -1
- data/doc/Files/ApiKeyOnlyForFileOperationsError.html +1 -1
- data/doc/Files/ApiKeyOnlyForMobileAppError.html +1 -1
- data/doc/Files/ApiKeyOnlyForOfficeIntegrationError.html +1 -1
- data/doc/Files/ApiKeySessionsNotSupportedError.html +1 -1
- data/doc/Files/ApiRequestLog.html +1 -1
- data/doc/Files/App.html +1 -1
- data/doc/Files/As2IncomingMessage.html +1 -1
- data/doc/Files/As2OutgoingMessage.html +1 -1
- data/doc/Files/As2Partner.html +1 -1
- data/doc/Files/As2Station.html +1 -1
- data/doc/Files/AttachmentTooLargeError.html +1 -1
- data/doc/Files/AuthenticationError.html +1 -1
- data/doc/Files/AuthenticationRequiredError.html +1 -1
- data/doc/Files/Auto.html +1 -1
- data/doc/Files/Automation.html +1 -1
- data/doc/Files/AutomationAuthoringSchema.html +1 -1
- data/doc/Files/AutomationCannotBeRunManuallyError.html +1 -1
- data/doc/Files/AutomationExecutionNode.html +1 -1
- data/doc/Files/AutomationLog.html +1 -1
- data/doc/Files/AutomationRun.html +1 -1
- data/doc/Files/AutomationsUnavailableError.html +1 -1
- data/doc/Files/BadRequestError.html +1 -1
- data/doc/Files/BandwidthSnapshot.html +1 -1
- data/doc/Files/Behavior.html +1 -1
- data/doc/Files/BehaviorNotAllowedOnRemoteServerError.html +1 -1
- data/doc/Files/BillingInformationHiddenError.html +1 -1
- data/doc/Files/BillingPermissionRequiredError.html +1 -1
- data/doc/Files/BufferedUploadDisabledForThisDestinationError.html +1 -1
- data/doc/Files/Bundle.html +1 -1
- data/doc/Files/BundleAction.html +1 -1
- data/doc/Files/BundleDownload.html +1 -1
- data/doc/Files/BundleMaximumUsesReachedError.html +1 -1
- data/doc/Files/BundleNotification.html +1 -1
- data/doc/Files/BundleOnlyAllowsPreviewsError.html +1 -1
- data/doc/Files/BundleOperationRequiresSubfolderError.html +1 -1
- data/doc/Files/BundlePath.html +1 -1
- data/doc/Files/BundlePathNotFoundError.html +1 -1
- data/doc/Files/BundlePermissionRequiredError.html +1 -1
- data/doc/Files/BundleRecipient.html +1 -1
- data/doc/Files/BundleRegistration.html +1 -1
- data/doc/Files/BundleRegistrationCodeFailedError.html +1 -1
- data/doc/Files/BundleRegistrationNotFoundError.html +1 -1
- data/doc/Files/CannotAdministerHigherLevelUserError.html +1 -1
- data/doc/Files/CannotDownloadDirectoryError.html +1 -1
- data/doc/Files/CannotLoginWhileUsingKeyError.html +1 -1
- data/doc/Files/CantActForOtherUserError.html +1 -1
- data/doc/Files/CantMoveWithMultipleLocationsError.html +1 -1
- data/doc/Files/ChatMessage.html +1 -1
- data/doc/Files/ChatSession.html +1 -1
- data/doc/Files/ChildSiteManagementPolicy.html +1 -1
- data/doc/Files/Clickwrap.html +1 -1
- data/doc/Files/CodeNotFoundError.html +1 -1
- data/doc/Files/ConfigurationLockedPathError.html +1 -1
- data/doc/Files/ContactAdminForPasswordChangeHelpError.html +1 -1
- data/doc/Files/CouldNotCreateParentError.html +1 -1
- data/doc/Files/CustomDomain.html +1 -1
- data/doc/Files/DatetimeParseError.html +1 -1
- data/doc/Files/DesktopConfigurationProfile.html +1 -1
- data/doc/Files/DestinationExistsError.html +1 -1
- data/doc/Files/DestinationFolderLimitedError.html +1 -1
- data/doc/Files/DestinationParentConflictError.html +1 -1
- data/doc/Files/DestinationParentDoesNotExistError.html +1 -1
- data/doc/Files/DestinationSameError.html +1 -1
- data/doc/Files/DestinationSiteMismatchError.html +1 -1
- data/doc/Files/DirectConnectionInfo.html +1 -1
- data/doc/Files/DnsRecord.html +1 -1
- data/doc/Files/DoesNotSupportSortingError.html +1 -1
- data/doc/Files/DuplicateShareRecipientError.html +1 -1
- data/doc/Files/EmailIncomingMessage.html +1 -1
- data/doc/Files/EmailLog.html +1 -1
- data/doc/Files/Error.html +2 -2
- data/doc/Files/Errors.html +1 -1
- data/doc/Files/EventChannel.html +1 -1
- data/doc/Files/EventDeliveryAttempt.html +1 -1
- data/doc/Files/EventRecord.html +1 -1
- data/doc/Files/EventSubscription.html +1 -1
- data/doc/Files/EventTarget.html +1 -1
- data/doc/Files/ExavaultApiRequestLog.html +1 -1
- data/doc/Files/ExceededRuntimeLimitError.html +1 -1
- data/doc/Files/Expectation.html +1 -1
- data/doc/Files/ExpectationAlreadyHasOpenWindowError.html +1 -1
- data/doc/Files/ExpectationEvaluation.html +1 -1
- data/doc/Files/ExpectationIncident.html +1 -1
- data/doc/Files/ExpectationNotManualTriggerError.html +1 -1
- data/doc/Files/ExpiredPrivateKeyError.html +1 -1
- data/doc/Files/ExpiredPublicKeyError.html +1 -1
- data/doc/Files/ExportFailureError.html +1 -1
- data/doc/Files/ExportNotReadyError.html +1 -1
- data/doc/Files/ExternalEvent.html +1 -1
- data/doc/Files/FailedToChangePasswordError.html +1 -1
- data/doc/Files/File.html +2019 -1515
- data/doc/Files/FileAction.html +1 -1
- data/doc/Files/FileActionError.html +1 -1
- data/doc/Files/FileComment.html +1 -1
- data/doc/Files/FileCommentReaction.html +1 -1
- data/doc/Files/FileLockedError.html +1 -1
- data/doc/Files/FileMigration.html +1 -1
- data/doc/Files/FileMigrationLog.html +1 -1
- data/doc/Files/FileNotFoundError.html +1 -1
- data/doc/Files/FileNotUploadedError.html +1 -1
- data/doc/Files/FilePendingProcessingError.html +1 -1
- data/doc/Files/FileProcessingErrorError.html +1 -1
- data/doc/Files/FileTooBigToDecryptError.html +1 -1
- data/doc/Files/FileTooBigToEncryptError.html +1 -1
- data/doc/Files/FileUploadNotFoundError.html +1 -1
- data/doc/Files/FileUploadPart.html +1 -1
- data/doc/Files/FileUploadedToWrongRegionError.html +1 -1
- data/doc/Files/FileUtils.html +1 -1
- data/doc/Files/FilenameTooLongError.html +1 -1
- data/doc/Files/FilesAgentFailedAuthorizationError.html +1 -1
- data/doc/Files/FilesNativeStorageOverloadedError.html +1 -1
- data/doc/Files/Folder.html +1 -1
- data/doc/Files/FolderAdminOrBillingPermissionRequiredError.html +1 -1
- data/doc/Files/FolderAdminPermissionRequiredError.html +1 -1
- data/doc/Files/FolderLockedError.html +1 -1
- data/doc/Files/FolderMustNotBeAFileError.html +1 -1
- data/doc/Files/FolderNotEmptyError.html +1 -1
- data/doc/Files/FoldersNotAllowedError.html +1 -1
- data/doc/Files/FormField.html +1 -1
- data/doc/Files/FormFieldSet.html +1 -1
- data/doc/Files/FtpActionLog.html +1 -1
- data/doc/Files/FullPermissionRequiredError.html +1 -1
- data/doc/Files/GpgKey.html +1 -1
- data/doc/Files/Group.html +1 -1
- data/doc/Files/GroupNotFoundError.html +1 -1
- data/doc/Files/GroupUser.html +1 -1
- data/doc/Files/History.html +1 -1
- data/doc/Files/HistoryExport.html +1 -1
- data/doc/Files/HistoryExportResult.html +1 -1
- data/doc/Files/HistoryPermissionRequiredError.html +1 -1
- data/doc/Files/HistoryUnavailableError.html +1 -1
- data/doc/Files/HolidayCalendar.html +1 -1
- data/doc/Files/HolidayRegion.html +1 -1
- data/doc/Files/Image.html +1 -1
- data/doc/Files/InAppAiAssistantUnavailableError.html +1 -1
- data/doc/Files/InboundS3Log.html +1 -1
- data/doc/Files/InboxNotFoundError.html +1 -1
- data/doc/Files/InboxRecipient.html +1 -1
- data/doc/Files/InboxRegistration.html +1 -1
- data/doc/Files/InboxRegistrationCodeFailedError.html +1 -1
- data/doc/Files/InboxUpload.html +1 -1
- data/doc/Files/InsufficientPermissionForParamsError.html +1 -1
- data/doc/Files/InsufficientPermissionForSiteError.html +1 -1
- data/doc/Files/IntegrationCentricProfile.html +1 -1
- data/doc/Files/InternalGeneralErrorError.html +1 -1
- data/doc/Files/InvalidBodyError.html +1 -1
- data/doc/Files/InvalidBundleCodeError.html +1 -1
- data/doc/Files/InvalidCredentialsError.html +1 -1
- data/doc/Files/InvalidCursorError.html +1 -1
- data/doc/Files/InvalidCursorTypeForSortError.html +1 -1
- data/doc/Files/InvalidEtagsError.html +1 -1
- data/doc/Files/InvalidFileTypeError.html +1 -1
- data/doc/Files/InvalidFilenameError.html +1 -1
- data/doc/Files/InvalidFilterAliasCombinationError.html +1 -1
- data/doc/Files/InvalidFilterFieldError.html +1 -1
- data/doc/Files/InvalidFilterParamError.html +1 -1
- data/doc/Files/InvalidFilterParamFormatError.html +1 -1
- data/doc/Files/InvalidFilterParamValueError.html +1 -1
- data/doc/Files/InvalidInputEncodingError.html +1 -1
- data/doc/Files/InvalidInterfaceError.html +1 -1
- data/doc/Files/InvalidOauthError.html +1 -1
- data/doc/Files/InvalidOauthProviderError.html +1 -1
- data/doc/Files/InvalidOrExpiredCodeError.html +1 -1
- data/doc/Files/InvalidParameterError.html +5 -1
- data/doc/Files/InvalidPathError.html +1 -1
- data/doc/Files/InvalidPriorityColorError.html +1 -1
- data/doc/Files/InvalidRangeError.html +1 -1
- data/doc/Files/InvalidReturnToUrlError.html +1 -1
- data/doc/Files/InvalidSearchQueryError.html +1 -1
- data/doc/Files/InvalidSessionError.html +1 -1
- data/doc/Files/InvalidSiteError.html +1 -1
- data/doc/Files/InvalidSortFieldError.html +1 -1
- data/doc/Files/InvalidSortFilterCombinationError.html +1 -1
- data/doc/Files/InvalidUploadOffsetError.html +1 -1
- data/doc/Files/InvalidUploadPartGapError.html +1 -1
- data/doc/Files/InvalidUploadPartSizeError.html +1 -1
- data/doc/Files/InvalidUsernameOrPasswordError.html +1 -1
- data/doc/Files/InvalidWorkspaceIdHeaderError.html +1 -1
- data/doc/Files/InvalidZipFileError.html +1 -1
- data/doc/Files/Invoice.html +1 -1
- data/doc/Files/InvoiceLineItem.html +1 -1
- data/doc/Files/IpAddress.html +1 -1
- data/doc/Files/KeyLifecycleRule.html +1 -1
- data/doc/Files/List.html +1 -1
- data/doc/Files/Lock.html +1 -1
- data/doc/Files/LockOperationBusyError.html +1 -1
- data/doc/Files/LockedOutError.html +1 -1
- data/doc/Files/LockoutRegionMismatchError.html +1 -1
- data/doc/Files/MetadataCategory.html +1 -1
- data/doc/Files/MetadataNotSupportedOnRemotesError.html +1 -1
- data/doc/Files/MethodNotAllowedError.html +1 -1
- data/doc/Files/MigrationInProgressError.html +1 -1
- data/doc/Files/MissingParameterError.html +1 -1
- data/doc/Files/ModelSaveErrorError.html +1 -1
- data/doc/Files/MoverAccessDeniedError.html +1 -1
- data/doc/Files/MoverPackageRequiredError.html +1 -1
- data/doc/Files/MultipleProcessingErrorsError.html +1 -1
- data/doc/Files/MultipleSortParamsNotAllowedError.html +1 -1
- data/doc/Files/MustAuthenticateWithApiKeyError.html +1 -1
- data/doc/Files/NeedAdminPermissionForInboxError.html +1 -1
- data/doc/Files/NestedNotFoundError.html +1 -1
- data/doc/Files/NoAccountForSiteError.html +1 -1
- data/doc/Files/NoValidInputParamsError.html +1 -1
- data/doc/Files/NonAdminsMustQueryByFolderOrPathError.html +1 -1
- data/doc/Files/NotAllowedToCreateBundleError.html +1 -1
- data/doc/Files/NotAuthenticatedError.html +1 -1
- data/doc/Files/NotAuthorizedError.html +1 -1
- data/doc/Files/NotEnqueuableSyncError.html +1 -1
- data/doc/Files/NotFoundError.html +1 -1
- data/doc/Files/NotImplementedError.html +1 -1
- data/doc/Files/Notification.html +1 -1
- data/doc/Files/OffsetUploadNotAllowedWithMalwareScanningError.html +1 -1
- data/doc/Files/OneTimePasswordIncorrectError.html +1 -1
- data/doc/Files/OutboundConnectionLog.html +1 -1
- data/doc/Files/PartNumberTooLargeError.html +1 -1
- data/doc/Files/Partner.html +1 -1
- data/doc/Files/PartnerChannel.html +1 -1
- data/doc/Files/PartnerChannelTemplate.html +1 -1
- data/doc/Files/PartnerConnection.html +1 -1
- data/doc/Files/PartnerSite.html +1 -1
- data/doc/Files/PartnerSiteRequest.html +1 -1
- data/doc/Files/PasswordChangeNotRequiredError.html +1 -1
- data/doc/Files/PasswordChangeRequiredError.html +1 -1
- data/doc/Files/PathCannotHaveTrailingWhitespaceError.html +1 -1
- data/doc/Files/PathTooLongError.html +1 -1
- data/doc/Files/PathUtil.html +1 -1
- data/doc/Files/Payment.html +1 -1
- data/doc/Files/PaymentLineItem.html +1 -1
- data/doc/Files/PaymentMethodErrorError.html +1 -1
- data/doc/Files/PendingWorkEvent.html +1 -1
- data/doc/Files/Permission.html +1 -1
- data/doc/Files/PlanNotFoundError.html +1 -1
- data/doc/Files/Preview.html +1 -1
- data/doc/Files/PreviewOnlyPermissionCannotDownloadError.html +1 -1
- data/doc/Files/ProcessingFailureError.html +1 -1
- data/doc/Files/PublicHostingRequestLog.html +1 -1
- data/doc/Files/PublicIpAddress.html +1 -1
- data/doc/Files/PublicKey.html +1 -1
- data/doc/Files/RateLimitedError.html +1 -1
- data/doc/Files/ReadOnlySessionError.html +1 -1
- data/doc/Files/ReadPermissionRequiredError.html +1 -1
- data/doc/Files/ReauthenticationFailedError.html +1 -1
- data/doc/Files/ReauthenticationFailedFinalError.html +1 -1
- data/doc/Files/ReauthenticationNeededActionError.html +1 -1
- data/doc/Files/ReauthenticationNeededFieldsError.html +1 -1
- data/doc/Files/ReauthenticationRateLimitedError.html +1 -1
- data/doc/Files/RecaptchaFailedError.html +1 -1
- data/doc/Files/RecipientAlreadySharedError.html +1 -1
- data/doc/Files/RemoteBandwidthSnapshot.html +1 -1
- data/doc/Files/RemoteDesktopDebugLoggingDisabledError.html +1 -1
- data/doc/Files/RemoteEntryReadOnlyError.html +1 -1
- data/doc/Files/RemoteMountBackend.html +1 -1
- data/doc/Files/RemoteServer.html +1 -1
- data/doc/Files/RemoteServerConfigurationFile.html +1 -1
- data/doc/Files/RemoteServerCredential.html +1 -1
- data/doc/Files/RemoteServerErrorError.html +1 -1
- data/doc/Files/Request.html +1 -1
- data/doc/Files/RequestBodyTooLargeError.html +1 -1
- data/doc/Files/RequestParamsContainInvalidCharacterError.html +1 -1
- data/doc/Files/RequestParamsInvalidError.html +1 -1
- data/doc/Files/RequestParamsRequiredError.html +1 -1
- data/doc/Files/ResourceBelongsToParentSiteError.html +1 -1
- data/doc/Files/ResourceLockedError.html +1 -1
- data/doc/Files/Response.html +1 -1
- data/doc/Files/Restore.html +1 -1
- data/doc/Files/RootFolderBehaviorSiteAdminRequiredError.html +1 -1
- data/doc/Files/RootFolderBehaviorSkipSiteAdminRequiredError.html +1 -1
- data/doc/Files/Schedule.html +1 -1
- data/doc/Files/ScheduledExport.html +1 -1
- data/doc/Files/ScimLog.html +1 -1
- data/doc/Files/SearchAllOnChildPathError.html +1 -1
- data/doc/Files/SearchUnavailableError.html +1 -1
- data/doc/Files/Secret.html +1 -1
- data/doc/Files/SelfManagedRequiredError.html +1 -1
- data/doc/Files/ServiceUnavailableError.html +1 -1
- data/doc/Files/Session.html +1 -1
- data/doc/Files/SettingsChange.html +1 -1
- data/doc/Files/SftpActionLog.html +1 -1
- data/doc/Files/SftpHostKey.html +1 -1
- data/doc/Files/ShareGroup.html +1 -1
- data/doc/Files/ShareGroupMember.html +1 -1
- data/doc/Files/SiemHttpDestination.html +1 -1
- data/doc/Files/SiemHttpDestinationEvent.html +1 -1
- data/doc/Files/Site.html +1 -1
- data/doc/Files/SiteAdminOrPartnerAdminPermissionRequiredError.html +1 -1
- data/doc/Files/SiteAdminOrWorkspaceAdminOrFolderAdminPermissionRequiredError.html +1 -1
- data/doc/Files/SiteAdminOrWorkspaceAdminOrPartnerAdminOrFolderAdminPermissionRequiredError.html +1 -1
- data/doc/Files/SiteAdminOrWorkspaceAdminOrPartnerAdminPermissionRequiredError.html +1 -1
- data/doc/Files/SiteAdminOrWorkspaceAdminPermissionRequiredError.html +1 -1
- data/doc/Files/SiteAdminRequiredError.html +1 -1
- data/doc/Files/SiteConfigurationError.html +1 -1
- data/doc/Files/SiteDisabledError.html +1 -1
- data/doc/Files/SiteFilesAreImmutableError.html +1 -1
- data/doc/Files/SiteNotFoundError.html +1 -1
- data/doc/Files/SiteSubdomainRedirect.html +1 -1
- data/doc/Files/SiteWasRemovedError.html +1 -1
- data/doc/Files/SizableIO.html +1 -1
- data/doc/Files/Snapshot.html +1 -1
- data/doc/Files/SsoEvent.html +1 -1
- data/doc/Files/SsoStrategy.html +1 -1
- data/doc/Files/Status.html +1 -1
- data/doc/Files/Style.html +1 -1
- data/doc/Files/SubfolderLockedError.html +1 -1
- data/doc/Files/Sync.html +1 -1
- data/doc/Files/SyncInProgressError.html +1 -1
- data/doc/Files/SyncLog.html +1 -1
- data/doc/Files/SyncRun.html +1 -1
- data/doc/Files/SyncRunLiveTransfer.html +1 -1
- data/doc/Files/SystemProfiler.html +1 -1
- data/doc/Files/TooManyConcurrentLoginsError.html +1 -1
- data/doc/Files/TooManyConcurrentRequestsError.html +1 -1
- data/doc/Files/TooManyLoginAttemptsError.html +1 -1
- data/doc/Files/TooManyRequestsError.html +1 -1
- data/doc/Files/TooManySharesError.html +1 -1
- data/doc/Files/Transfer/BufferLimitError.html +175 -0
- data/doc/Files/Transfer/ByteBudget/Reservation.html +301 -0
- data/doc/Files/Transfer/ByteBudget.html +748 -0
- data/doc/Files/Transfer/CancelledError.html +235 -0
- data/doc/Files/Transfer/Checkpoint.html +1371 -0
- data/doc/Files/Transfer/CheckpointError.html +173 -0
- data/doc/Files/Transfer/ClientTransport/ClientResponse.html +661 -0
- data/doc/Files/Transfer/ClientTransport/Reader.html +530 -0
- data/doc/Files/Transfer/ClientTransport.html +675 -0
- data/doc/Files/Transfer/Clock.html +189 -0
- data/doc/Files/Transfer/Control.html +667 -0
- data/doc/Files/Transfer/Controller/Attempt.html +465 -0
- data/doc/Files/Transfer/Controller.html +1166 -0
- data/doc/Files/Transfer/Coordinator/Timing.html +568 -0
- data/doc/Files/Transfer/Coordinator.html +534 -0
- data/doc/Files/Transfer/DownloadCoordinator/FileSink.html +976 -0
- data/doc/Files/Transfer/DownloadCoordinator/IoSink.html +1168 -0
- data/doc/Files/Transfer/DownloadCoordinator/Piece.html +875 -0
- data/doc/Files/Transfer/DownloadCoordinator.html +728 -0
- data/doc/Files/Transfer/FileSlots.html +480 -0
- data/doc/Files/Transfer/FrontendResponseError.html +235 -0
- data/doc/Files/Transfer/Holds.html +505 -0
- data/doc/Files/Transfer/HttpTransport.html +579 -0
- data/doc/Files/Transfer/Job.html +2338 -0
- data/doc/Files/Transfer/Options.html +924 -0
- data/doc/Files/Transfer/PausedError.html +319 -0
- data/doc/Files/Transfer/Policy.html +1642 -0
- data/doc/Files/Transfer/RequestPermits.html +160 -0
- data/doc/Files/Transfer/SourceChangedError.html +235 -0
- data/doc/Files/Transfer/StorageResponse.html +546 -0
- data/doc/Files/Transfer/StorageRetry.html +1098 -0
- data/doc/Files/Transfer/UploadCoordinator/Grant.html +1048 -0
- data/doc/Files/Transfer/UploadCoordinator/Part.html +1048 -0
- data/doc/Files/Transfer/UploadCoordinator/Region.html +295 -0
- data/doc/Files/Transfer/UploadCoordinator/Segments.html +299 -0
- data/doc/Files/Transfer/UploadCoordinator/Source.html +725 -0
- data/doc/Files/Transfer/UploadCoordinator/StreamSource.html +664 -0
- data/doc/Files/Transfer/UploadCoordinator.html +546 -0
- data/doc/Files/Transfer/UploadPlan.html +522 -0
- data/doc/Files/Transfer/VersionChangedError.html +235 -0
- data/doc/Files/Transfer.html +134 -0
- data/doc/Files/TrialExpiredError.html +1 -1
- data/doc/Files/TrialLockedError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationCodeAlreadySentError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationCountryBlacklistedError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationErrorError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationGeneralErrorError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationMethodUnsupportedErrorError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationRequiredError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationSetupExpiredError.html +1 -1
- data/doc/Files/TwoFactorAuthenticationUnsubscribedRecipientError.html +1 -1
- data/doc/Files/URI.html +1 -1
- data/doc/Files/UnrecognizedSortIndexError.html +1 -1
- data/doc/Files/UnsupportedCurrencyError.html +1 -1
- data/doc/Files/UnsupportedHttpResponseFormatError.html +1 -1
- data/doc/Files/UnsupportedMediaTypeError.html +1 -1
- data/doc/Files/UpdatesNotAllowedForRemotesError.html +1 -1
- data/doc/Files/UploadsUnavailableError.html +1 -1
- data/doc/Files/UsageByTopLevelDir.html +1 -1
- data/doc/Files/UsageDailySnapshot.html +1 -1
- data/doc/Files/UsageSnapshot.html +1 -1
- data/doc/Files/User.html +1 -1
- data/doc/Files/UserAdditionalEmailRecipient.html +1 -1
- data/doc/Files/UserCipherUse.html +1 -1
- data/doc/Files/UserIdInvalidError.html +1 -1
- data/doc/Files/UserIdOnUserEndpointError.html +1 -1
- data/doc/Files/UserIdWithoutSiteAdminError.html +1 -1
- data/doc/Files/UserLifecycleRule.html +1 -1
- data/doc/Files/UserNotFoundError.html +1 -1
- data/doc/Files/UserRequest.html +1 -1
- data/doc/Files/UserRequestsEnabledRequiredError.html +1 -1
- data/doc/Files/UserRequiredError.html +1 -1
- data/doc/Files/UserSecurityEvent.html +1 -1
- data/doc/Files/UserSftpClientUse.html +1 -1
- data/doc/Files/Util/LogSettings.html +1 -1
- data/doc/Files/Util.html +1 -1
- data/doc/Files/WebDavActionLog.html +1 -1
- data/doc/Files/WebhookTest.html +1 -1
- data/doc/Files/Workspace.html +1 -1
- data/doc/Files/WriteAndBundlePermissionRequiredError.html +1 -1
- data/doc/Files/WritePermissionRequiredError.html +1 -1
- data/doc/Files/ZipListEntry.html +1 -1
- data/doc/Files.html +116 -116
- data/doc/_index.html +314 -4
- data/doc/class_list.html +1 -1
- data/doc/file.README.html +1 -1
- data/doc/index.html +1 -1
- data/doc/method_list.html +4703 -2415
- data/doc/top-level-namespace.html +1 -1
- data/docs/file.md +346 -0
- data/lib/files.com/api.rb +6 -1
- data/lib/files.com/api_client.rb +220 -32
- data/lib/files.com/models/file.rb +124 -17
- data/lib/files.com/transfer/budgets.rb +123 -0
- data/lib/files.com/transfer/checkpoint.rb +113 -0
- data/lib/files.com/transfer/clock.rb +14 -0
- data/lib/files.com/transfer/controller.rb +549 -0
- data/lib/files.com/transfer/download_coordinator.rb +906 -0
- data/lib/files.com/transfer/errors.rb +100 -0
- data/lib/files.com/transfer/http_transport.rb +337 -0
- data/lib/files.com/transfer/job.rb +778 -0
- data/lib/files.com/transfer/options.rb +126 -0
- data/lib/files.com/transfer/policy.rb +91 -0
- data/lib/files.com/transfer/storage_retry.rb +169 -0
- data/lib/files.com/transfer/upload_coordinator.rb +657 -0
- data/lib/files.com/transfer/upload_plan.rb +157 -0
- data/lib/files.com.rb +13 -0
- data/spec/lib/api_client_spec.rb +125 -3
- data/spec/models/file_transfer_spec.rb +53 -4
- data/spec/support/transfer_server.rb +113 -14
- data/spec/transfer/adaptive_download_spec.rb +1102 -0
- data/spec/transfer/adaptive_upload_spec.rb +1602 -0
- data/spec/transfer/concurrency_controller_spec.rb +382 -0
- data/spec/workspace_id_spec.rb +19 -14
- metadata +59 -1
|
@@ -0,0 +1,546 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>
|
|
7
|
+
Class: Files::Transfer::UploadCoordinator
|
|
8
|
+
|
|
9
|
+
— Documentation by YARD 0.9.45
|
|
10
|
+
|
|
11
|
+
</title>
|
|
12
|
+
|
|
13
|
+
<link rel="stylesheet" href="../../css/style.css" type="text/css">
|
|
14
|
+
|
|
15
|
+
<link rel="stylesheet" href="../../css/common.css" type="text/css">
|
|
16
|
+
|
|
17
|
+
<script type="text/javascript">
|
|
18
|
+
pathId = "Files::Transfer::UploadCoordinator";
|
|
19
|
+
relpath = '../../';
|
|
20
|
+
</script>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
<script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
|
|
24
|
+
|
|
25
|
+
<script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
</head>
|
|
29
|
+
<body>
|
|
30
|
+
<div id="main_progress" aria-hidden="true"></div>
|
|
31
|
+
|
|
32
|
+
<div class="nav_wrap">
|
|
33
|
+
<iframe id="nav" src="../../class_list.html?1"></iframe>
|
|
34
|
+
<div id="resizer"></div>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
<div id="main" tabindex="-1">
|
|
38
|
+
<div id="header">
|
|
39
|
+
<div id="menu">
|
|
40
|
+
|
|
41
|
+
<a href="../../_index.html">Index (U)</a> »
|
|
42
|
+
<span class='title'><span class='object_link'><a href="../../Files.html" title="Files (module)">Files</a></span></span> » <span class='title'><span class='object_link'><a href="../Transfer.html" title="Files::Transfer (module)">Transfer</a></span></span>
|
|
43
|
+
»
|
|
44
|
+
<span class="title">UploadCoordinator</span>
|
|
45
|
+
|
|
46
|
+
</div>
|
|
47
|
+
|
|
48
|
+
<div id="search">
|
|
49
|
+
|
|
50
|
+
<a class="full_list_link" id="class_list_link"
|
|
51
|
+
href="../../class_list.html">
|
|
52
|
+
|
|
53
|
+
<svg width="24" height="24">
|
|
54
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
|
55
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
|
56
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
|
57
|
+
</svg>
|
|
58
|
+
</a>
|
|
59
|
+
|
|
60
|
+
</div>
|
|
61
|
+
<div class="clear"></div>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<div id="content"><h1>Class: Files::Transfer::UploadCoordinator
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
</h1>
|
|
69
|
+
<div class="box_info">
|
|
70
|
+
|
|
71
|
+
<dl>
|
|
72
|
+
<dt>Inherits:</dt>
|
|
73
|
+
<dd>
|
|
74
|
+
<span class="inheritName"><span class='object_link'><a href="Coordinator.html" title="Files::Transfer::Coordinator (class)">Coordinator</a></span></span>
|
|
75
|
+
|
|
76
|
+
<ul class="fullTree">
|
|
77
|
+
<li>Object</li>
|
|
78
|
+
|
|
79
|
+
<li class="next"><span class='object_link'><a href="Coordinator.html" title="Files::Transfer::Coordinator (class)">Coordinator</a></span></li>
|
|
80
|
+
|
|
81
|
+
<li class="next">Files::Transfer::UploadCoordinator</li>
|
|
82
|
+
|
|
83
|
+
</ul>
|
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
|
85
|
+
|
|
86
|
+
</dd>
|
|
87
|
+
</dl>
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
<dl>
|
|
100
|
+
<dt>Defined in:</dt>
|
|
101
|
+
<dd>lib/files.com/transfer/upload_coordinator.rb
|
|
102
|
+
</dd>
|
|
103
|
+
</dl>
|
|
104
|
+
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
<h2>Overview</h2><div class="docstring">
|
|
108
|
+
<div class="discussion">
|
|
109
|
+
<p>Uploads one local file, or a caller's stream of a known size, through a Job, its parts sent concurrently.</p>
|
|
110
|
+
<p>On the caller's thread it asks the API for parts five at a time (begin_upload, with with_direct_connection_info),
|
|
111
|
+
checks each part's instructions, sends progress and finalizes. Every API request of the upload uses one context
|
|
112
|
+
the caller's thread fixed as it began (Coordinator.api_context), updated by each grant's own options, which carry
|
|
113
|
+
any regional origin the API moved the upload to, for the requests after it. The API chooses each part's size,
|
|
114
|
+
unless the upload plans its own, as below. Parts go to cloud storage under the storage policy, or under the direct
|
|
115
|
+
policy when the first part's direct_connection_info is a valid version 1 description (server_name, addresses,
|
|
116
|
+
direct_uri and ca_pem); the parts still go to the upload_uri the API gave. A part whose instructions say
|
|
117
|
+
parallel_parts: false makes the file send one part at a time.</p>
|
|
118
|
+
<p>An upload plans its own part sizes only when every part of the API's first answer is for one ordinary multipart
|
|
119
|
+
upload straight to Amazon S3 (UploadPlan.route) and UploadPlan can plan the file within its limits. All its parts
|
|
120
|
+
but the last then have the size UploadPlan.part_size gives, which buffer_bytes must hold before anything is read;
|
|
121
|
+
partsize and next_partsize are only recommendations, and each part keeps its offset and size through renewals,
|
|
122
|
+
retries and a resume, whatever the API recommends later. Every later part and renewal must be for that same S3
|
|
123
|
+
upload, as the first answer described it, or the upload stops before sending the part.</p>
|
|
124
|
+
<p>Through the job's own transport, a part streams from the opened file at its offset and holds at most 64 KiB in
|
|
125
|
+
memory; through a caller's client it is read whole first, so it must fit buffer_bytes. A caller's stream is read
|
|
126
|
+
on the caller's thread, part by part in order, each part only once the buffer budget holds all reading and
|
|
127
|
+
sending it may need, and what it then holds stays held, through renewals and retries, until storage acknowledges
|
|
128
|
+
the part or the upload stops; no part is sent before its bytes are read. Each read's bytes are copied before the
|
|
129
|
+
next read, so a stream whose reads reuse one String still sends exactly what it read, and its Strings are never
|
|
130
|
+
changed. Over the job's own transport a part read in pieces keeps them apart and is sent through a 64 KiB slice
|
|
131
|
+
it holds with them; a caller's client takes one String, so a part read in pieces is copied into one, within
|
|
132
|
+
twice its bytes, after which it holds its bytes alone.</p>
|
|
133
|
+
<p>A part counts as acknowledged only for a 2xx response with exactly one nonempty ETag, and is reported to progress,
|
|
134
|
+
on the caller's thread, once. A signed URL near its expiry is renewed before it is used, at most twice for a part;
|
|
135
|
+
one still expired after that stops the upload without being sent. A part whose URL expired after it was sent is
|
|
136
|
+
renewed and sent again only when its instructions allow retries, as one of its retries. A renewal must keep the
|
|
137
|
+
part's instructions: the reference, part number, size (the planned one, for an upload planning its own), method,
|
|
138
|
+
headers and retry rules. Before each part and
|
|
139
|
+
before finalizing, the local file must still be the one opened, with the same size and modification time.</p>
|
|
140
|
+
|
|
141
|
+
</div>
|
|
142
|
+
</div>
|
|
143
|
+
<div class="tags">
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
</div><h2>Defined Under Namespace</h2>
|
|
147
|
+
<p class="children">
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
<strong class="classes">Classes:</strong> <span class='object_link'><a href="UploadCoordinator/Grant.html" title="Files::Transfer::UploadCoordinator::Grant (class)">Grant</a></span>, <span class='object_link'><a href="UploadCoordinator/Part.html" title="Files::Transfer::UploadCoordinator::Part (class)">Part</a></span>, <span class='object_link'><a href="UploadCoordinator/Region.html" title="Files::Transfer::UploadCoordinator::Region (class)">Region</a></span>, <span class='object_link'><a href="UploadCoordinator/Segments.html" title="Files::Transfer::UploadCoordinator::Segments (class)">Segments</a></span>, <span class='object_link'><a href="UploadCoordinator/Source.html" title="Files::Transfer::UploadCoordinator::Source (class)">Source</a></span>, <span class='object_link'><a href="UploadCoordinator/StreamSource.html" title="Files::Transfer::UploadCoordinator::StreamSource (class)">StreamSource</a></span>
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
</p>
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
<h2>
|
|
159
|
+
Constant Summary
|
|
160
|
+
<small><a href="#" class="constants_summary_toggle">collapse</a></small>
|
|
161
|
+
</h2>
|
|
162
|
+
|
|
163
|
+
<dl class="constants">
|
|
164
|
+
|
|
165
|
+
<dt id="STREAM_BUFFER_BYTES-constant" class="">STREAM_BUFFER_BYTES =
|
|
166
|
+
|
|
167
|
+
</dt>
|
|
168
|
+
<dd><pre class="code"><span class='int'>64</span> <span class='op'>*</span> <span class='int'>1024</span></pre></dd>
|
|
169
|
+
|
|
170
|
+
<dt id="RENEWALS-constant" class="">RENEWALS =
|
|
171
|
+
|
|
172
|
+
</dt>
|
|
173
|
+
<dd><pre class="code"><span class='int'>2</span></pre></dd>
|
|
174
|
+
|
|
175
|
+
<dt id="ACK_FAILURE-constant" class="">ACK_FAILURE =
|
|
176
|
+
|
|
177
|
+
</dt>
|
|
178
|
+
<dd><pre class="code"><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Transfer response did not acknowledge the part</span><span class='tstring_end'>"</span></span></pre></dd>
|
|
179
|
+
|
|
180
|
+
<dt id="CHECKPOINT_PARAMS-constant" class="">CHECKPOINT_PARAMS =
|
|
181
|
+
<div class="docstring">
|
|
182
|
+
<div class="discussion">
|
|
183
|
+
<p>The caller's upload parameters a checkpoint keeps, when they are true, false or an Integer.</p>
|
|
184
|
+
|
|
185
|
+
</div>
|
|
186
|
+
</div>
|
|
187
|
+
<div class="tags">
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
</div>
|
|
191
|
+
</dt>
|
|
192
|
+
<dd><pre class="code"><span class='qsymbols_beg'>%i[</span><span class='tstring_content'>mkdir_parents</span><span class='words_sep'> </span><span class='tstring_content'>with_rename</span><span class='words_sep'> </span><span class='tstring_content'>size</span><span class='tstring_end'>]</span></span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span></pre></dd>
|
|
193
|
+
|
|
194
|
+
</dl>
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
<h2>
|
|
205
|
+
Class Method Summary
|
|
206
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
|
207
|
+
</h2>
|
|
208
|
+
|
|
209
|
+
<ul class="summary">
|
|
210
|
+
|
|
211
|
+
<li class="public ">
|
|
212
|
+
<span class="summary_signature">
|
|
213
|
+
|
|
214
|
+
<a href="#resume-class_method" title="resume (class method)">.<strong>resume</strong>(job, checkpoint, options, progress:) ⇒ Object </a>
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
</span>
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
|
229
|
+
|
|
230
|
+
</li>
|
|
231
|
+
|
|
232
|
+
|
|
233
|
+
<li class="public ">
|
|
234
|
+
<span class="summary_signature">
|
|
235
|
+
|
|
236
|
+
<a href="#upload-class_method" title="upload (class method)">.<strong>upload</strong>(job, path, destination, options, params:, progress:) ⇒ Object </a>
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
</span>
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
<span class="summary_desc"><div class='inline'><p>Opens path only once the job gives the upload a file slot.</p></div></span>
|
|
251
|
+
|
|
252
|
+
</li>
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
<li class="public ">
|
|
256
|
+
<span class="summary_signature">
|
|
257
|
+
|
|
258
|
+
<a href="#upload_io-class_method" title="upload_io (class method)">.<strong>upload_io</strong>(job, io, size, destination, options, params:, progress:) ⇒ Object </a>
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
</span>
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
<span class="summary_desc"><div class='inline'><p>Uploads exactly size bytes of the caller's io, which stays open.</p></div></span>
|
|
273
|
+
|
|
274
|
+
</li>
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
</ul>
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
<h2>
|
|
281
|
+
Instance Method Summary
|
|
282
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
|
283
|
+
</h2>
|
|
284
|
+
|
|
285
|
+
<ul class="summary">
|
|
286
|
+
|
|
287
|
+
<li class="public ">
|
|
288
|
+
<span class="summary_signature">
|
|
289
|
+
|
|
290
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(job, open_source, destination, options, params:, progress:, checkpoint: nil, lease: nil) ⇒ UploadCoordinator </a>
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
</span>
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
<span class="note title constructor">constructor</span>
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
<span class="summary_desc"><div class='inline'><p>A new instance of UploadCoordinator.</p></div></span>
|
|
307
|
+
|
|
308
|
+
</li>
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
</ul>
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
<h3 class="inherited">Methods inherited from <span class='object_link'><a href="Coordinator.html" title="Files::Transfer::Coordinator (class)">Coordinator</a></span></h3>
|
|
326
|
+
<p class="inherited"><span class='object_link'><a href="Coordinator.html#api_context-class_method" title="Files::Transfer::Coordinator.api_context (method)">api_context</a></span>, <span class='object_link'><a href="Coordinator.html#run-instance_method" title="Files::Transfer::Coordinator#run (method)">#run</a></span></p>
|
|
327
|
+
<div id="constructor_details" class="method_details_list">
|
|
328
|
+
<h2>Constructor Details</h2>
|
|
329
|
+
|
|
330
|
+
<div class="method_details first">
|
|
331
|
+
<h3 class="signature first" id="initialize-instance_method">
|
|
332
|
+
|
|
333
|
+
#<strong>initialize</strong>(job, open_source, destination, options, params:, progress:, checkpoint: nil, lease: nil) ⇒ <tt><span class='object_link'><a href="" title="Files::Transfer::UploadCoordinator (class)">UploadCoordinator</a></span></tt>
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
</h3><div class="docstring">
|
|
340
|
+
<div class="discussion">
|
|
341
|
+
<p>Returns a new instance of UploadCoordinator.</p>
|
|
342
|
+
|
|
343
|
+
</div>
|
|
344
|
+
</div>
|
|
345
|
+
<div class="tags">
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
</div><table class="source_code">
|
|
349
|
+
<tr>
|
|
350
|
+
<td>
|
|
351
|
+
<pre class="lines">
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
212
|
|
355
|
+
213
|
|
356
|
+
214
|
|
357
|
+
215
|
|
358
|
+
216
|
|
359
|
+
217
|
|
360
|
+
218
|
|
361
|
+
219
|
|
362
|
+
220
|
|
363
|
+
221
|
|
364
|
+
222
|
|
365
|
+
223
|
|
366
|
+
224
|
|
367
|
+
225
|
|
368
|
+
226
|
|
369
|
+
227
|
|
370
|
+
228
|
|
371
|
+
229
|
|
372
|
+
230
|
|
373
|
+
231
|
|
374
|
+
232
|
|
375
|
+
233
|
|
376
|
+
234
|
|
377
|
+
235</pre>
|
|
378
|
+
</td>
|
|
379
|
+
<td>
|
|
380
|
+
<pre class="code"><span class="info file"># File 'lib/files.com/transfer/upload_coordinator.rb', line 212</span>
|
|
381
|
+
|
|
382
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='id identifier rubyid_open_source'>open_source</span><span class='comma'>,</span> <span class='id identifier rubyid_destination'>destination</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>params:</span><span class='comma'>,</span> <span class='label'>progress:</span><span class='comma'>,</span> <span class='label'>checkpoint:</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='label'>lease:</span> <span class='kw'>nil</span><span class='rparen'>)</span>
|
|
383
|
+
<span class='kw'>super</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='rparen'>)</span>
|
|
384
|
+
<span class='ivar'>@open_source</span> <span class='op'>=</span> <span class='id identifier rubyid_open_source'>open_source</span>
|
|
385
|
+
<span class='ivar'>@source</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
386
|
+
<span class='ivar'>@destination</span> <span class='op'>=</span> <span class='id identifier rubyid_destination'>destination</span>
|
|
387
|
+
<span class='ivar'>@options</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Coordinator.html" title="Files::Transfer::Coordinator (class)">Coordinator</a></span></span><span class='period'>.</span><span class='id identifier rubyid_api_context'><span class='object_link'><a href="Coordinator.html#api_context-class_method" title="Files::Transfer::Coordinator.api_context (method)">api_context</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
|
388
|
+
<span class='ivar'>@params</span> <span class='op'>=</span> <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_transform_keys'>transform_keys</span><span class='lparen'>(</span><span class='op'>&</span><span class='symbol'>:to_sym</span><span class='rparen'>)</span>
|
|
389
|
+
<span class='ivar'>@progress</span> <span class='op'>=</span> <span class='id identifier rubyid_progress'>progress</span>
|
|
390
|
+
<span class='ivar'>@client</span> <span class='op'>=</span> <span class='ivar'>@options</span><span class='lbracket'>[</span><span class='symbol'>:client</span><span class='rbracket'>]</span>
|
|
391
|
+
<span class='ivar'>@transport</span> <span class='op'>=</span> <span class='id identifier rubyid_job'>job</span><span class='period'>.</span><span class='id identifier rubyid_transport_for'>transport_for</span><span class='lparen'>(</span><span class='ivar'>@client</span><span class='rparen'>)</span>
|
|
392
|
+
<span class='ivar'>@parts</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
|
393
|
+
<span class='ivar'>@accepted</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
|
394
|
+
<span class='ivar'>@accepted_bytes</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
395
|
+
<span class='ivar'>@ref</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
396
|
+
<span class='ivar'>@planned_bytes</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
397
|
+
<span class='ivar'>@next_read</span> <span class='op'>=</span> <span class='int'>0</span>
|
|
398
|
+
<span class='ivar'>@file_cap</span> <span class='op'>=</span> <span class='const'>Float</span><span class='op'>::</span><span class='const'>INFINITY</span>
|
|
399
|
+
<span class='comment'># For an upload planning its own part sizes, its route (UploadPlan.route) and the size of its parts but the last.
|
|
400
|
+
</span> <span class='ivar'>@route</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
401
|
+
<span class='ivar'>@part_size</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
|
402
|
+
<span class='ivar'>@origin</span> <span class='op'>=</span> <span class='id identifier rubyid_checkpoint'>checkpoint</span>
|
|
403
|
+
<span class='ivar'>@lease</span> <span class='op'>=</span> <span class='id identifier rubyid_lease'>lease</span>
|
|
404
|
+
<span class='id identifier rubyid_restore'>restore</span><span class='lparen'>(</span><span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_checkpoint'>checkpoint</span>
|
|
405
|
+
<span class='kw'>end</span></pre>
|
|
406
|
+
</td>
|
|
407
|
+
</tr>
|
|
408
|
+
</table>
|
|
409
|
+
</div>
|
|
410
|
+
|
|
411
|
+
</div>
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
<div id="class_method_details" class="method_details_list">
|
|
415
|
+
<h2>Class Method Details</h2>
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
<div class="method_details first">
|
|
419
|
+
<h3 class="signature first" id="resume-class_method">
|
|
420
|
+
|
|
421
|
+
.<strong>resume</strong>(job, checkpoint, options, progress:) ⇒ <tt>Object</tt>
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
</h3><table class="source_code">
|
|
428
|
+
<tr>
|
|
429
|
+
<td>
|
|
430
|
+
<pre class="lines">
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
204
|
|
434
|
+
205
|
|
435
|
+
206
|
|
436
|
+
207
|
|
437
|
+
208
|
|
438
|
+
209
|
|
439
|
+
210</pre>
|
|
440
|
+
</td>
|
|
441
|
+
<td>
|
|
442
|
+
<pre class="code"><span class="info file"># File 'lib/files.com/transfer/upload_coordinator.rb', line 204</span>
|
|
443
|
+
|
|
444
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_resume'>resume</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>progress:</span><span class='rparen'>)</span>
|
|
445
|
+
<span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='period'>.</span><span class='id identifier rubyid_resuming'>resuming</span><span class='lparen'>(</span><span class='symbol'>:upload</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_lease'>lease</span><span class='op'>|</span>
|
|
446
|
+
<span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='tlambda'>-></span> <span class='tlambeg'>{</span> <span class='const'><span class='object_link'><a href="UploadCoordinator/Source.html" title="Files::Transfer::UploadCoordinator::Source (class)">Source</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="UploadCoordinator/Source.html#initialize-instance_method" title="Files::Transfer::UploadCoordinator::Source#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='period'>.</span><span class='id identifier rubyid_local_path'>local_path</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>params:</span> <span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='period'>.</span><span class='id identifier rubyid_state'>state</span><span class='lbracket'>[</span><span class='symbol'>:params</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_dup'>dup</span><span class='comma'>,</span> <span class='label'>progress:</span> <span class='id identifier rubyid_progress'>progress</span><span class='comma'>,</span>
|
|
447
|
+
<span class='label'>checkpoint:</span> <span class='id identifier rubyid_checkpoint'>checkpoint</span><span class='comma'>,</span> <span class='label'>lease:</span> <span class='id identifier rubyid_lease'>lease</span>
|
|
448
|
+
<span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_run'>run</span>
|
|
449
|
+
<span class='kw'>end</span>
|
|
450
|
+
<span class='kw'>end</span></pre>
|
|
451
|
+
</td>
|
|
452
|
+
</tr>
|
|
453
|
+
</table>
|
|
454
|
+
</div>
|
|
455
|
+
|
|
456
|
+
<div class="method_details ">
|
|
457
|
+
<h3 class="signature " id="upload-class_method">
|
|
458
|
+
|
|
459
|
+
.<strong>upload</strong>(job, path, destination, options, params:, progress:) ⇒ <tt>Object</tt>
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
</h3><div class="docstring">
|
|
466
|
+
<div class="discussion">
|
|
467
|
+
<p>Opens path only once the job gives the upload a file slot.</p>
|
|
468
|
+
|
|
469
|
+
</div>
|
|
470
|
+
</div>
|
|
471
|
+
<div class="tags">
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
</div><table class="source_code">
|
|
475
|
+
<tr>
|
|
476
|
+
<td>
|
|
477
|
+
<pre class="lines">
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
195
|
|
481
|
+
196
|
|
482
|
+
197</pre>
|
|
483
|
+
</td>
|
|
484
|
+
<td>
|
|
485
|
+
<pre class="code"><span class="info file"># File 'lib/files.com/transfer/upload_coordinator.rb', line 195</span>
|
|
486
|
+
|
|
487
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_upload'>upload</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='id identifier rubyid_destination'>destination</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>params:</span><span class='comma'>,</span> <span class='label'>progress:</span><span class='rparen'>)</span>
|
|
488
|
+
<span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='tlambda'>-></span> <span class='tlambeg'>{</span> <span class='const'><span class='object_link'><a href="UploadCoordinator/Source.html" title="Files::Transfer::UploadCoordinator::Source (class)">Source</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="UploadCoordinator/Source.html#initialize-instance_method" title="Files::Transfer::UploadCoordinator::Source#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_path'>path</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_destination'>destination</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>params:</span> <span class='id identifier rubyid_params'>params</span><span class='comma'>,</span> <span class='label'>progress:</span> <span class='id identifier rubyid_progress'>progress</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_run'>run</span>
|
|
489
|
+
<span class='kw'>end</span></pre>
|
|
490
|
+
</td>
|
|
491
|
+
</tr>
|
|
492
|
+
</table>
|
|
493
|
+
</div>
|
|
494
|
+
|
|
495
|
+
<div class="method_details ">
|
|
496
|
+
<h3 class="signature " id="upload_io-class_method">
|
|
497
|
+
|
|
498
|
+
.<strong>upload_io</strong>(job, io, size, destination, options, params:, progress:) ⇒ <tt>Object</tt>
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
|
|
502
|
+
|
|
503
|
+
|
|
504
|
+
</h3><div class="docstring">
|
|
505
|
+
<div class="discussion">
|
|
506
|
+
<p>Uploads exactly size bytes of the caller's io, which stays open.</p>
|
|
507
|
+
|
|
508
|
+
</div>
|
|
509
|
+
</div>
|
|
510
|
+
<div class="tags">
|
|
511
|
+
|
|
512
|
+
|
|
513
|
+
</div><table class="source_code">
|
|
514
|
+
<tr>
|
|
515
|
+
<td>
|
|
516
|
+
<pre class="lines">
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
200
|
|
520
|
+
201
|
|
521
|
+
202</pre>
|
|
522
|
+
</td>
|
|
523
|
+
<td>
|
|
524
|
+
<pre class="code"><span class="info file"># File 'lib/files.com/transfer/upload_coordinator.rb', line 200</span>
|
|
525
|
+
|
|
526
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_upload_io'>upload_io</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_size'>size</span><span class='comma'>,</span> <span class='id identifier rubyid_destination'>destination</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>params:</span><span class='comma'>,</span> <span class='label'>progress:</span><span class='rparen'>)</span>
|
|
527
|
+
<span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_job'>job</span><span class='comma'>,</span> <span class='tlambda'>-></span> <span class='tlambeg'>{</span> <span class='const'><span class='object_link'><a href="UploadCoordinator/StreamSource.html" title="Files::Transfer::UploadCoordinator::StreamSource (class)">StreamSource</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="UploadCoordinator/StreamSource.html#initialize-instance_method" title="Files::Transfer::UploadCoordinator::StreamSource#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_size'>size</span><span class='rparen'>)</span> <span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_destination'>destination</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='comma'>,</span> <span class='label'>params:</span> <span class='id identifier rubyid_params'>params</span><span class='comma'>,</span> <span class='label'>progress:</span> <span class='id identifier rubyid_progress'>progress</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_run'>run</span>
|
|
528
|
+
<span class='kw'>end</span></pre>
|
|
529
|
+
</td>
|
|
530
|
+
</tr>
|
|
531
|
+
</table>
|
|
532
|
+
</div>
|
|
533
|
+
|
|
534
|
+
</div>
|
|
535
|
+
|
|
536
|
+
</div>
|
|
537
|
+
|
|
538
|
+
<div id="footer">
|
|
539
|
+
Generated on Tue Nov 3 18:04:21 2026 by
|
|
540
|
+
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
541
|
+
0.9.45 (ruby-4.0.9).
|
|
542
|
+
</div>
|
|
543
|
+
|
|
544
|
+
</div>
|
|
545
|
+
</body>
|
|
546
|
+
</html>
|