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§
Sourcefn list(
&self,
request: GrpcListRequest,
) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>
fn list( &self, request: GrpcListRequest, ) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>
- List (paginated, filtered, sorted)
Sourcefn create(&self, request: T) -> Result<GrpcResponse<T>, Error>
fn create(&self, request: T) -> Result<GrpcResponse<T>, Error>
- Create
Sourcefn update(&self, request: T) -> Result<GrpcResponse<T>, Error>
fn update(&self, request: T) -> Result<GrpcResponse<T>, Error>
- Full update
Sourcefn partial_update(
&self,
request: GrpcPartialUpdateRequest,
) -> Result<GrpcResponse<T>, Error>
fn partial_update( &self, request: GrpcPartialUpdateRequest, ) -> Result<GrpcResponse<T>, Error>
- Partial update
Sourcefn soft_delete(&self, request: Uuid) -> Result<GrpcResponse<()>, Error>
fn soft_delete(&self, request: Uuid) -> Result<GrpcResponse<()>, Error>
- Soft delete
Sourcefn bulk_create(
&self,
request: GrpcBulkCreateRequest<T>,
) -> Result<GrpcResponse<GrpcBulkResponse<T>>, Error>
fn bulk_create( &self, request: GrpcBulkCreateRequest<T>, ) -> Result<GrpcResponse<GrpcBulkResponse<T>>, Error>
- Bulk create
Sourcefn upsert(
&self,
request: GrpcUpsertRequest<T>,
) -> Result<GrpcResponse<T>, Error>
fn upsert( &self, request: GrpcUpsertRequest<T>, ) -> Result<GrpcResponse<T>, Error>
- Upsert
Sourcefn list_deleted(
&self,
request: GrpcListRequest,
) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>
fn list_deleted( &self, request: GrpcListRequest, ) -> Result<GrpcResponse<GrpcListResponse<T>>, Error>
- List deleted
Sourcefn empty_trash(&self, request: ()) -> Result<GrpcResponse<()>, Error>
fn empty_trash(&self, request: ()) -> Result<GrpcResponse<()>, Error>
- Empty trash
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".