[][src]Trait sunrise_libuser::fs::IFileSystemServiceAsync

pub trait IFileSystemServiceAsync {
    fn open_disk_partition<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        disk_id: DiskId,
        partition_id: PartitionId
    ) -> FutureObj<'a, Result<IFileSystemProxy, Error>>;
fn open_disk_storage<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        disk_id: DiskId
    ) -> FutureObj<'a, Result<IStorageProxy, Error>>;
fn get_disks_count<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>
    ) -> FutureObj<'a, Result<u32, Error>>;
fn format_disk_partition<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        disk_id: DiskId,
        partition_id: PartitionId,
        filesystem_type: FileSystemType
    ) -> FutureObj<'a, Result<(), Error>>;
fn initialize_disk<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        disk_id: DiskId
    ) -> FutureObj<'a, Result<(), Error>>; fn dispatch<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        cmdid: u32,
        buf: &'a mut [u8]
    ) -> FutureObj<Result<(), Error>> { ... } }

Entry point of the file system interface.

Allows to interract with various filesytem via IPC.

Required methods

fn open_disk_partition<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    disk_id: DiskId,
    partition_id: PartitionId
) -> FutureObj<'a, Result<IFileSystemProxy, Error>>

Open a disk partition filesystem. This may fail if no compatible driver is found.

fn open_disk_storage<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    disk_id: DiskId
) -> FutureObj<'a, Result<IStorageProxy, Error>>

Open a disk as a block device. This may fail if no partition table is found.

fn get_disks_count<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>
) -> FutureObj<'a, Result<u32, Error>>

Get the count of disks availaible.

fn format_disk_partition<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    disk_id: DiskId,
    partition_id: PartitionId,
    filesystem_type: FileSystemType
) -> FutureObj<'a, Result<(), Error>>

Format a disk partition to the given filesystem type.

fn initialize_disk<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    disk_id: DiskId
) -> FutureObj<'a, Result<(), Error>>

Initialize a disk partition table

Loading content...

Provided methods

fn dispatch<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    cmdid: u32,
    buf: &'a mut [u8]
) -> FutureObj<Result<(), Error>>

Handle an incoming IPC request.

Loading content...

Implementors

Loading content...