Trait wrpc_interface_blobstore::Blobstore
source · pub trait Blobstore: Client {
Show 42 associated items
type ClearContainerInvocationStream;
type ContainerExistsInvocationStream;
type CreateContainerInvocationStream;
type DeleteContainerInvocationStream;
type GetContainerInfoInvocationStream;
type ListContainerObjectsInvocationStream;
type CopyObjectInvocationStream;
type DeleteObjectInvocationStream;
type DeleteObjectsInvocationStream;
type GetContainerDataInvocationStream;
type GetObjectInfoInvocationStream;
type HasObjectInvocationStream;
type MoveObjectInvocationStream;
type WriteContainerDataInvocationStream;
// Required methods
fn invoke_clear_container(
&self,
name: String
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_clear_container(
&self
) -> impl Future<Output = Result<Self::ClearContainerInvocationStream>> + Send;
fn invoke_container_exists(
&self,
name: String
) -> impl Future<Output = Result<(Result<bool, String>, Self::Transmission)>> + Send;
fn serve_container_exists(
&self
) -> impl Future<Output = Result<Self::ContainerExistsInvocationStream>> + Send;
fn invoke_create_container(
&self,
name: String
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_create_container(
&self
) -> impl Future<Output = Result<Self::CreateContainerInvocationStream>> + Send;
fn invoke_delete_container(
&self,
name: String
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_delete_container(
&self
) -> impl Future<Output = Result<Self::DeleteContainerInvocationStream>> + Send;
fn invoke_get_container_info(
&self,
name: String
) -> impl Future<Output = Result<(Result<ContainerMetadata, String>, Self::Transmission)>> + Send;
fn serve_get_container_info(
&self
) -> impl Future<Output = Result<Self::GetContainerInfoInvocationStream>> + Send;
fn invoke_list_container_objects(
&self,
name: String,
limit: Option<u64>,
offset: Option<u64>
) -> impl Future<Output = Result<(Result<Box<dyn Stream<Item = Result<Vec<String>>> + Send + Sync + Unpin>, String>, Self::Transmission)>> + Send;
fn serve_list_container_objects(
&self
) -> impl Future<Output = Result<Self::ListContainerObjectsInvocationStream>> + Send;
fn invoke_copy_object(
&self,
src: ObjectId,
dest: ObjectId
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_copy_object(
&self
) -> impl Future<Output = Result<Self::CopyObjectInvocationStream>> + Send;
fn invoke_delete_object(
&self,
id: ObjectId
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_delete_object(
&self
) -> impl Future<Output = Result<Self::DeleteObjectInvocationStream>> + Send;
fn invoke_delete_objects(
&self,
container: String,
objects: Vec<String>
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_delete_objects(
&self
) -> impl Future<Output = Result<Self::DeleteObjectsInvocationStream>> + Send;
fn invoke_get_container_data(
&self,
id: ObjectId,
start: u64,
end: u64
) -> impl Future<Output = Result<(Result<IncomingInputStream, String>, Self::Transmission)>> + Send;
fn serve_get_container_data(
&self
) -> impl Future<Output = Result<Self::GetContainerDataInvocationStream>> + Send;
fn invoke_get_object_info(
&self,
id: ObjectId
) -> impl Future<Output = Result<(Result<ObjectMetadata, String>, Self::Transmission)>> + Send;
fn serve_get_object_info(
&self
) -> impl Future<Output = Result<Self::GetObjectInfoInvocationStream>> + Send;
fn invoke_has_object(
&self,
id: ObjectId
) -> impl Future<Output = Result<(Result<bool, String>, Self::Transmission)>> + Send;
fn serve_has_object(
&self
) -> impl Future<Output = Result<Self::HasObjectInvocationStream>> + Send;
fn invoke_move_object(
&self,
src: ObjectId,
dest: ObjectId
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_move_object(
&self
) -> impl Future<Output = Result<Self::MoveObjectInvocationStream>> + Send;
fn invoke_write_container_data(
&self,
id: ObjectId,
data: impl Stream<Item = Bytes> + Send + 'static
) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send;
fn serve_write_container_data(
&self
) -> impl Future<Output = Result<Self::WriteContainerDataInvocationStream>> + Send;
}
Required Associated Types§
type ClearContainerInvocationStream
type ContainerExistsInvocationStream
type CreateContainerInvocationStream
type DeleteContainerInvocationStream
type GetContainerInfoInvocationStream
type ListContainerObjectsInvocationStream
type CopyObjectInvocationStream
type DeleteObjectInvocationStream
type DeleteObjectsInvocationStream
type GetContainerDataInvocationStream
type GetObjectInfoInvocationStream
type HasObjectInvocationStream
type MoveObjectInvocationStream
type WriteContainerDataInvocationStream
Required Methods§
fn invoke_clear_container( &self, name: String ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_clear_container( &self ) -> impl Future<Output = Result<Self::ClearContainerInvocationStream>> + Send
fn invoke_container_exists( &self, name: String ) -> impl Future<Output = Result<(Result<bool, String>, Self::Transmission)>> + Send
fn serve_container_exists( &self ) -> impl Future<Output = Result<Self::ContainerExistsInvocationStream>> + Send
fn invoke_create_container( &self, name: String ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_create_container( &self ) -> impl Future<Output = Result<Self::CreateContainerInvocationStream>> + Send
fn invoke_delete_container( &self, name: String ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_delete_container( &self ) -> impl Future<Output = Result<Self::DeleteContainerInvocationStream>> + Send
fn invoke_get_container_info( &self, name: String ) -> impl Future<Output = Result<(Result<ContainerMetadata, String>, Self::Transmission)>> + Send
fn serve_get_container_info( &self ) -> impl Future<Output = Result<Self::GetContainerInfoInvocationStream>> + Send
fn invoke_list_container_objects( &self, name: String, limit: Option<u64>, offset: Option<u64> ) -> impl Future<Output = Result<(Result<Box<dyn Stream<Item = Result<Vec<String>>> + Send + Sync + Unpin>, String>, Self::Transmission)>> + Send
fn serve_list_container_objects( &self ) -> impl Future<Output = Result<Self::ListContainerObjectsInvocationStream>> + Send
fn invoke_copy_object( &self, src: ObjectId, dest: ObjectId ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_copy_object( &self ) -> impl Future<Output = Result<Self::CopyObjectInvocationStream>> + Send
fn invoke_delete_object( &self, id: ObjectId ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_delete_object( &self ) -> impl Future<Output = Result<Self::DeleteObjectInvocationStream>> + Send
fn invoke_delete_objects( &self, container: String, objects: Vec<String> ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_delete_objects( &self ) -> impl Future<Output = Result<Self::DeleteObjectsInvocationStream>> + Send
fn invoke_get_container_data( &self, id: ObjectId, start: u64, end: u64 ) -> impl Future<Output = Result<(Result<IncomingInputStream, String>, Self::Transmission)>> + Send
fn serve_get_container_data( &self ) -> impl Future<Output = Result<Self::GetContainerDataInvocationStream>> + Send
fn invoke_get_object_info( &self, id: ObjectId ) -> impl Future<Output = Result<(Result<ObjectMetadata, String>, Self::Transmission)>> + Send
fn serve_get_object_info( &self ) -> impl Future<Output = Result<Self::GetObjectInfoInvocationStream>> + Send
fn invoke_has_object( &self, id: ObjectId ) -> impl Future<Output = Result<(Result<bool, String>, Self::Transmission)>> + Send
fn serve_has_object( &self ) -> impl Future<Output = Result<Self::HasObjectInvocationStream>> + Send
fn invoke_move_object( &self, src: ObjectId, dest: ObjectId ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_move_object( &self ) -> impl Future<Output = Result<Self::MoveObjectInvocationStream>> + Send
fn invoke_write_container_data( &self, id: ObjectId, data: impl Stream<Item = Bytes> + Send + 'static ) -> impl Future<Output = Result<(Result<(), String>, Self::Transmission)>> + Send
fn serve_write_container_data( &self ) -> impl Future<Output = Result<Self::WriteContainerDataInvocationStream>> + Send
Object Safety§
This trait is not object safe.