Audacity 3.2.0
|
Public Types | |
using | Clock = std::chrono::steady_clock |
Public Member Functions | |
AudiocomUploadOperation (const ServiceConfig &serviceConfig, wxString fileName, wxString projectName, bool isPublic, UploadService::CompletedCallback completedCallback, UploadService::ProgressCallback progressCallback) | |
void | SetRequiredHeaders (audacity::network_manager::Request &request) const |
void | FailPromise (UploadOperationCompleted::Result result, std::string errorMessage) |
void | CompletePromise () |
void | InitiateUpload (std::string_view authToken) |
void | HandleUploadPolicy (std::string uploadPolicyJSON) |
void | HandleUploadProgress (uint64_t current, uint64_t total) |
void | HandleS3UploadCompleted (std::shared_ptr< audacity::network_manager::IResponse > response) |
bool | IsCompleted () override |
Returns true if the upload is finished. More... | |
void | Abort () override |
Abort the upload, if running. More... | |
void | DiscardResult () override |
Public Member Functions inherited from cloud::audiocom::UploadOperation | |
virtual | ~UploadOperation () |
virtual bool | IsCompleted ()=0 |
Returns true if the upload is finished. More... | |
virtual void | Abort ()=0 |
Abort the upload, if running. More... | |
virtual void | DiscardResult ()=0 |
Public Attributes | |
const ServiceConfig & | mServiceConfig |
const wxString | mFileName |
const wxString | mProjectName |
const bool | mIsPublic |
UploadService::CompletedCallback | mCompletedCallback |
UploadService::ProgressCallback | mProgressCallback |
std::string | mAuthToken |
std::string | mSuccessUrl |
std::string | mFailureUrl |
std::string | mProgressUrl |
std::string | mAudioID |
std::string | mUploadToken |
std::string | mUserName |
std::string | mAudioSlug |
Clock::time_point | mLastProgressReportTime |
std::mutex | mStatusMutex |
std::mutex | mCallbacksMutex |
std::weak_ptr< audacity::network_manager::IResponse > | mActiveResponse |
bool | mCompleted {} |
bool | mAborted {} |
Definition at line 173 of file UploadService.cpp.
using cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::Clock = std::chrono::steady_clock |
Definition at line 213 of file UploadService.cpp.
|
inline |
Definition at line 177 of file UploadService.cpp.
|
inlineoverridevirtual |
Abort the upload, if running.
Implements cloud::audiocom::UploadOperation.
Definition at line 521 of file UploadService.cpp.
References cloud::audiocom::UploadOperationCompleted::Aborted.
|
inline |
Definition at line 257 of file UploadService.cpp.
References cloud::audiocom::ServiceConfig::GetAudioURL(), cloud::audiocom::ServiceConfig::GetFinishUploadPage(), and cloud::audiocom::UploadOperationCompleted::Success.
|
inlineoverridevirtual |
Abort the upload, if running, notify audio.com that the uploaded file is no longer needed otherwise
Implements cloud::audiocom::UploadOperation.
Definition at line 546 of file UploadService.cpp.
References cloud::audiocom::ServiceConfig::GetAPIUrl(), and anonymous_namespace{FrameStatistics.cpp}::GetInstance().
|
inline |
Definition at line 238 of file UploadService.cpp.
References cloud::audiocom::anonymous_namespace{UploadService.cpp}::ParseUploadFailedMessage().
|
inline |
Definition at line 477 of file UploadService.cpp.
References anonymous_namespace{FrameStatistics.cpp}::GetInstance(), and cloud::audiocom::UploadOperationCompleted::UploadFailed.
|
inline |
Definition at line 339 of file UploadService.cpp.
References audacity::network_manager::common_headers::Accept, audacity::network_manager::common_content_types::ApplicationJson, audacity::network_manager::common_headers::ContentType, cloud::audiocom::anonymous_namespace{UploadService.cpp}::DeduceMimeType(), cloud::audiocom::UploadOperationCompleted::FileNotFound, anonymous_namespace{FrameStatistics.cpp}::GetInstance(), name, audacity::network_manager::Request::setHeader(), and cloud::audiocom::UploadOperationCompleted::UnexpectedResponse.
|
inline |
Definition at line 440 of file UploadService.cpp.
References audacity::network_manager::common_headers::Accept, audacity::network_manager::common_content_types::ApplicationJson, audacity::network_manager::common_headers::ContentType, anonymous_namespace{FrameStatistics.cpp}::GetInstance(), cloud::audiocom::ServiceConfig::GetProgressCallbackTimeout(), cloud::audiocom::anonymous_namespace{UploadService.cpp}::GetProgressPayload(), and audacity::network_manager::Request::setHeader().
|
inline |
Definition at line 282 of file UploadService.cpp.
References audacity::network_manager::common_headers::Accept, audacity::network_manager::common_content_types::ApplicationJson, audacity::network_manager::common_headers::ContentType, cloud::audiocom::ServiceConfig::GetAPIUrl(), anonymous_namespace{FrameStatistics.cpp}::GetInstance(), cloud::audiocom::anonymous_namespace{UploadService.cpp}::GetUploadRequestPayload(), cloud::audiocom::UploadOperationCompleted::InvalidData, audacity::network_manager::Request::setHeader(), cloud::audiocom::UploadOperationCompleted::Unauthorized, and cloud::audiocom::UploadOperationCompleted::UnexpectedResponse.
|
inlineoverridevirtual |
Returns true if the upload is finished.
Implements cloud::audiocom::UploadOperation.
Definition at line 515 of file UploadService.cpp.
|
inline |
Definition at line 224 of file UploadService.cpp.
References audacity::network_manager::common_headers::AcceptLanguage, audacity::network_manager::common_headers::Authorization, cloud::audiocom::ServiceConfig::GetAcceptLanguageValue(), and audacity::network_manager::Request::setHeader().
bool cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mAborted {} |
Definition at line 222 of file UploadService.cpp.
std::weak_ptr<audacity::network_manager::IResponse> cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mActiveResponse |
Definition at line 220 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mAudioID |
Definition at line 207 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mAudioSlug |
Definition at line 211 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mAuthToken |
Definition at line 201 of file UploadService.cpp.
|
mutable |
Definition at line 218 of file UploadService.cpp.
bool cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mCompleted {} |
Definition at line 221 of file UploadService.cpp.
UploadService::CompletedCallback cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mCompletedCallback |
Definition at line 198 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mFailureUrl |
Definition at line 204 of file UploadService.cpp.
const wxString cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mFileName |
Definition at line 193 of file UploadService.cpp.
const bool cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mIsPublic |
Definition at line 196 of file UploadService.cpp.
Clock::time_point cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mLastProgressReportTime |
Definition at line 215 of file UploadService.cpp.
UploadService::ProgressCallback cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mProgressCallback |
Definition at line 199 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mProgressUrl |
Definition at line 205 of file UploadService.cpp.
const wxString cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mProjectName |
Definition at line 194 of file UploadService.cpp.
const ServiceConfig& cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mServiceConfig |
Definition at line 191 of file UploadService.cpp.
|
mutable |
Definition at line 217 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mSuccessUrl |
Definition at line 203 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mUploadToken |
Definition at line 208 of file UploadService.cpp.
std::string cloud::audiocom::anonymous_namespace{UploadService.cpp}::AudiocomUploadOperation::mUserName |
Definition at line 209 of file UploadService.cpp.