Skip to main content

RepositoryProxy

Trait RepositoryProxy 

Source
pub trait RepositoryProxy {
    type Socket: Socket;

    // Required methods
    async fn init_repository(
        &mut self,
        path: &str,
        algorithm: Option<&str>,
        insecure: Option<bool>,
    ) -> Result<Result<InitRepositoryReply, RepositoryError>>;
    async fn open_repository(
        &mut self,
        path: Option<&str>,
        user: Option<bool>,
        system: Option<bool>,
    ) -> Result<Result<OpenRepositoryReply, RepositoryError>>;
    async fn close_repository(
        &mut self,
        handle: u64,
    ) -> Result<Result<(), RepositoryError>>;
    async fn fsck(
        &mut self,
        handle: u64,
        metadata_only: Option<bool>,
    ) -> Result<Result<FsckReply, RepositoryError>>;
    async fn gc(
        &mut self,
        handle: u64,
        dry_run: bool,
        roots: Vec<String>,
    ) -> Result<Result<GcReply, RepositoryError>>;
    async fn image_objects(
        &mut self,
        handle: u64,
        name: &str,
    ) -> Result<Result<ImageObjectsReply, RepositoryError>>;
    fn chain_init_repository<'c, '__proxy_params>(
        &'c mut self,
        path: &'__proxy_params str,
        algorithm: Option<&'__proxy_params str>,
        insecure: Option<bool>,
    ) -> Result<Chain<'c, Self::Socket>>;
    fn chain_open_repository<'c, '__proxy_params>(
        &'c mut self,
        path: Option<&'__proxy_params str>,
        user: Option<bool>,
        system: Option<bool>,
    ) -> Result<Chain<'c, Self::Socket>>;
    fn chain_close_repository<'c>(
        &'c mut self,
        handle: u64,
    ) -> Result<Chain<'c, Self::Socket>>;
    fn chain_fsck<'c>(
        &'c mut self,
        handle: u64,
        metadata_only: Option<bool>,
    ) -> Result<Chain<'c, Self::Socket>>;
    fn chain_gc<'c>(
        &'c mut self,
        handle: u64,
        dry_run: bool,
        roots: Vec<String>,
    ) -> Result<Chain<'c, Self::Socket>>;
    fn chain_image_objects<'c, '__proxy_params>(
        &'c mut self,
        handle: u64,
        name: &'__proxy_params str,
    ) -> Result<Chain<'c, Self::Socket>>;
}
Expand description

Typed client for the org.composefs.Repository interface.

Required Associated Types§

Source

type Socket: Socket

The socket type used for the connection.

Required Methods§

Source

async fn init_repository( &mut self, path: &str, algorithm: Option<&str>, insecure: Option<bool>, ) -> Result<Result<InitRepositoryReply, RepositoryError>>

Initialize a new repository (or verify an existing one).

Source

async fn open_repository( &mut self, path: Option<&str>, user: Option<bool>, system: Option<bool>, ) -> Result<Result<OpenRepositoryReply, RepositoryError>>

Open and validate a repository, returning an opaque handle.

Source

async fn close_repository( &mut self, handle: u64, ) -> Result<Result<(), RepositoryError>>

Close a previously opened repository handle.

Source

async fn fsck( &mut self, handle: u64, metadata_only: Option<bool>, ) -> Result<Result<FsckReply, RepositoryError>>

Check repository integrity.

Source

async fn gc( &mut self, handle: u64, dry_run: bool, roots: Vec<String>, ) -> Result<Result<GcReply, RepositoryError>>

Run garbage collection (or a dry run).

Source

async fn image_objects( &mut self, handle: u64, name: &str, ) -> Result<Result<ImageObjectsReply, RepositoryError>>

List the objects referenced by a single image.

Source

fn chain_init_repository<'c, '__proxy_params>( &'c mut self, path: &'__proxy_params str, algorithm: Option<&'__proxy_params str>, insecure: Option<bool>, ) -> Result<Chain<'c, Self::Socket>>

Start a chain with this method call.

Source

fn chain_open_repository<'c, '__proxy_params>( &'c mut self, path: Option<&'__proxy_params str>, user: Option<bool>, system: Option<bool>, ) -> Result<Chain<'c, Self::Socket>>

Start a chain with this method call.

Source

fn chain_close_repository<'c>( &'c mut self, handle: u64, ) -> Result<Chain<'c, Self::Socket>>

Start a chain with this method call.

Source

fn chain_fsck<'c>( &'c mut self, handle: u64, metadata_only: Option<bool>, ) -> Result<Chain<'c, Self::Socket>>

Start a chain with this method call.

Source

fn chain_gc<'c>( &'c mut self, handle: u64, dry_run: bool, roots: Vec<String>, ) -> Result<Chain<'c, Self::Socket>>

Start a chain with this method call.

Source

fn chain_image_objects<'c, '__proxy_params>( &'c mut self, handle: u64, name: &'__proxy_params str, ) -> Result<Chain<'c, Self::Socket>>

Start a chain with this method call.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<S> RepositoryProxy for Connection<S>
where S: Socket,

Source§

type Socket = S

Source§

async fn init_repository( &mut self, path: &str, algorithm: Option<&str>, insecure: Option<bool>, ) -> Result<Result<InitRepositoryReply, RepositoryError>>

Source§

async fn open_repository( &mut self, path: Option<&str>, user: Option<bool>, system: Option<bool>, ) -> Result<Result<OpenRepositoryReply, RepositoryError>>

Source§

async fn close_repository( &mut self, handle: u64, ) -> Result<Result<(), RepositoryError>>

Source§

async fn fsck( &mut self, handle: u64, metadata_only: Option<bool>, ) -> Result<Result<FsckReply, RepositoryError>>

Source§

async fn gc( &mut self, handle: u64, dry_run: bool, roots: Vec<String>, ) -> Result<Result<GcReply, RepositoryError>>

Source§

async fn image_objects( &mut self, handle: u64, name: &str, ) -> Result<Result<ImageObjectsReply, RepositoryError>>

Source§

fn chain_init_repository<'c, '__proxy_params>( &'c mut self, path: &'__proxy_params str, algorithm: Option<&'__proxy_params str>, insecure: Option<bool>, ) -> Result<Chain<'c, Self::Socket>>

Source§

fn chain_open_repository<'c, '__proxy_params>( &'c mut self, path: Option<&'__proxy_params str>, user: Option<bool>, system: Option<bool>, ) -> Result<Chain<'c, Self::Socket>>

Source§

fn chain_close_repository<'c>( &'c mut self, handle: u64, ) -> Result<Chain<'c, Self::Socket>>

Source§

fn chain_fsck<'c>( &'c mut self, handle: u64, metadata_only: Option<bool>, ) -> Result<Chain<'c, Self::Socket>>

Source§

fn chain_gc<'c>( &'c mut self, handle: u64, dry_run: bool, roots: Vec<String>, ) -> Result<Chain<'c, Self::Socket>>

Source§

fn chain_image_objects<'c, '__proxy_params>( &'c mut self, handle: u64, name: &'__proxy_params str, ) -> Result<Chain<'c, Self::Socket>>

Implementors§