pub struct MultiCloudManager { /* private fields */ }Expand description
Multi-cloud storage manager
Implementations§
Source§impl MultiCloudManager
impl MultiCloudManager
Sourcepub fn builder() -> MultiCloudManagerBuilder
pub fn builder() -> MultiCloudManagerBuilder
Creates a new builder for the multi-cloud manager
Sourcepub fn providers(&self) -> &[CloudProviderConfig]
pub fn providers(&self) -> &[CloudProviderConfig]
Returns the list of configured providers
Sourcepub fn get_stats(&self, provider_id: &str) -> Option<(u64, u64, f64, f64)>
pub fn get_stats(&self, provider_id: &str) -> Option<(u64, u64, f64, f64)>
Returns provider statistics
Sourcepub async fn get(&self, key: &str) -> Result<Bytes>
pub async fn get(&self, key: &str) -> Result<Bytes>
Gets data from cloud storage with automatic failover
Sourcepub async fn put(&self, key: &str, data: &[u8]) -> Result<()>
pub async fn put(&self, key: &str, data: &[u8]) -> Result<()>
Puts data to cloud storage with optional replication
Sourcepub async fn exists(&self, key: &str) -> Result<bool>
pub async fn exists(&self, key: &str) -> Result<bool>
Checks if an object exists in any provider
Sourcepub fn estimate_transfer_cost(&self, bytes: u64) -> TransferCostEstimate
pub fn estimate_transfer_cost(&self, bytes: u64) -> TransferCostEstimate
Estimates the cost of transferring data
Auto Trait Implementations§
impl !Freeze for MultiCloudManager
impl RefUnwindSafe for MultiCloudManager
impl Send for MultiCloudManager
impl Sync for MultiCloudManager
impl Unpin for MultiCloudManager
impl UnsafeUnpin for MultiCloudManager
impl UnwindSafe for MultiCloudManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.