Skip to main content

BackboneGrpcService

Trait BackboneGrpcService 

Source
pub trait BackboneGrpcService<T> {
    // Required methods
    fn list(
        &self,
        request: GrpcListRequest,
    ) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>;
    fn create(&self, request: T) -> Result<GrpcResponse<T>, Error>;
    fn get_by_id(&self, request: Uuid) -> Result<GrpcResponse<T>, Error>;
    fn update(&self, request: T) -> Result<GrpcResponse<T>, Error>;
    fn partial_update(
        &self,
        request: GrpcPartialUpdateRequest,
    ) -> Result<GrpcResponse<T>, Error>;
    fn soft_delete(&self, request: Uuid) -> Result<GrpcResponse<()>, Error>;
    fn bulk_create(
        &self,
        request: GrpcBulkCreateRequest<T>,
    ) -> Result<GrpcResponse<GrpcBulkResponse<T>>, Error>;
    fn upsert(
        &self,
        request: GrpcUpsertRequest<T>,
    ) -> Result<GrpcResponse<T>, Error>;
    fn list_deleted(
        &self,
        request: GrpcListRequest,
    ) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>;
    fn restore(&self, request: Uuid) -> Result<GrpcResponse<T>, Error>;
    fn empty_trash(&self, request: ()) -> Result<GrpcResponse<()>, Error>;
}
Expand description

Complete gRPC service trait for all 11 Backbone endpoints

Required Methods§

Source

fn list( &self, request: GrpcListRequest, ) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>

  1. List (paginated, filtered, sorted)
Source

fn create(&self, request: T) -> Result<GrpcResponse<T>, Error>

  1. Create
Source

fn get_by_id(&self, request: Uuid) -> Result<GrpcResponse<T>, Error>

  1. Get by ID
Source

fn update(&self, request: T) -> Result<GrpcResponse<T>, Error>

  1. Full update
Source

fn partial_update( &self, request: GrpcPartialUpdateRequest, ) -> Result<GrpcResponse<T>, Error>

  1. Partial update
Source

fn soft_delete(&self, request: Uuid) -> Result<GrpcResponse<()>, Error>

  1. Soft delete
Source

fn bulk_create( &self, request: GrpcBulkCreateRequest<T>, ) -> Result<GrpcResponse<GrpcBulkResponse<T>>, Error>

  1. Bulk create
Source

fn upsert( &self, request: GrpcUpsertRequest<T>, ) -> Result<GrpcResponse<T>, Error>

  1. Upsert
Source

fn list_deleted( &self, request: GrpcListRequest, ) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>

  1. List deleted
Source

fn restore(&self, request: Uuid) -> Result<GrpcResponse<T>, Error>

  1. Restore
Source

fn empty_trash(&self, request: ()) -> Result<GrpcResponse<()>, Error>

  1. Empty trash

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§