1#![cfg_attr(feature = "docs", feature(doc_cfg))]
2#![deny(
3 single_use_lifetimes,
4 missing_debug_implementations,
5 large_assignments,
6 exported_private_dependencies,
7 absolute_paths_not_starting_with_crate,
8 anonymous_parameters,
9 explicit_outlives_requirements,
10 keyword_idents,
11 macro_use_extern_crate,
12 meta_variable_misuse,
13 missing_docs,
14 non_ascii_idents,
15 indirect_structural_match,
16 trivial_numeric_casts,
17 unreachable_pub,
18 unsafe_code,
19 unused_extern_crates,
20 unused_import_braces,
21 unused_qualifications
22)]
23
24mod auto_uploader;
120mod callbacks;
121mod concurrency_provider;
122mod data_partition_provider;
123mod data_source;
124mod multi_parts_uploader;
125mod object_params;
126mod resumable_policy;
127mod resumable_recorder;
128mod scheduler;
129mod single_part_uploader;
130mod upload_manager;
131mod upload_token;
132
133pub use qiniu_apis as apis;
134pub use qiniu_apis::http_client::mime;
135
136pub use auto_uploader::{
137 AutoUploader, AutoUploaderBuilder, AutoUploaderObjectParams, AutoUploaderObjectParamsBuilder,
138 MultiPartsUploaderPrefer, MultiPartsUploaderSchedulerPrefer, SinglePartUploaderPrefer,
139};
140pub use callbacks::{MultiPartsUploaderWithCallbacks, UploaderWithCallbacks, UploadingProgressInfo};
141pub use concurrency_provider::{
142 Concurrency, ConcurrencyProvider, ConcurrencyProviderFeedback, ConcurrencyProviderFeedbackBuilder,
143 FixedConcurrencyProvider,
144};
145pub use data_partition_provider::{
146 DataPartitionProvider, DataPartitionProviderFeedback, DataPartitionProviderFeedbackBuilder,
147 FixedDataPartitionProvider, LimitedDataPartitionProvider, MultiplyDataPartitionProvider, PartSize,
148};
149pub use data_source::{DataSource, DataSourceReader, FileDataSource, SeekableSource, SourceKey, UnseekableDataSource};
150pub use multi_parts_uploader::{
151 InitializedParts, MultiPartsUploader, MultiPartsV1Uploader, MultiPartsV1UploaderInitializedObject,
152 MultiPartsV1UploaderUploadedPart, MultiPartsV2Uploader, MultiPartsV2UploaderInitializedObject,
153 MultiPartsV2UploaderUploadedPart, ReinitializeOptions, ReinitializeOptionsBuilder, UploadedPart,
154};
155pub use object_params::{ObjectParams, ObjectParamsBuilder};
156pub use resumable_policy::{
157 AlwaysMultiParts, AlwaysSinglePart, DynRead, FixedThresholdResumablePolicy, GetPolicyOptions,
158 MultiplePartitionsResumablePolicyProvider, ResumablePolicy, ResumablePolicyProvider,
159};
160pub use resumable_recorder::{
161 AppendOnlyResumableRecorderMedium, DummyResumableRecorder, DummyResumableRecorderMedium,
162 FileSystemResumableRecorder, ReadOnlyResumableRecorderMedium, ResumableRecorder,
163};
164pub use scheduler::{
165 ConcurrentMultiPartsUploaderScheduler, MultiPartsUploaderScheduler, MultiPartsUploaderSchedulerExt,
166 SerialMultiPartsUploaderScheduler,
167};
168pub use single_part_uploader::{FormUploader, SinglePartUploader};
169pub use upload_manager::{UploadManager, UploadManagerBuilder};
170pub use upload_token::{UploadTokenSigner, UploadTokenSignerBuilder};
171
172#[cfg(feature = "async")]
173pub use {
174 data_source::{
175 AsyncDataSource, AsyncDataSourceReader, AsyncFileDataSource, AsyncSeekableSource, AsyncUnseekableDataSource,
176 },
177 resumable_policy::DynAsyncRead,
178 resumable_recorder::{AppendOnlyAsyncResumableRecorderMedium, ReadOnlyAsyncResumableRecorderMedium},
179};
180
181pub mod prelude {
183 pub use super::apis::http_client::prelude::*;
184 pub use super::{
185 AppendOnlyResumableRecorderMedium, ConcurrencyProvider, DataPartitionProvider, DataSource, InitializedParts,
186 MultiPartsUploader, MultiPartsUploaderScheduler, MultiPartsUploaderSchedulerExt,
187 MultiPartsUploaderWithCallbacks, ReadOnlyResumableRecorderMedium, ResumablePolicyProvider, ResumableRecorder,
188 SinglePartUploader, UploadedPart, UploaderWithCallbacks,
189 };
190
191 #[cfg(feature = "async")]
192 pub use super::{
193 AppendOnlyAsyncResumableRecorderMedium, AsyncDataSource, DynAsyncRead, ReadOnlyAsyncResumableRecorderMedium,
194 };
195}