pub trait MulticastGroupService: Send + Sync + 'static {
    fn create<'life0, 'async_trait>(
        &'life0 self,
        request: Request<CreateMulticastGroupRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<CreateMulticastGroupResponse>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn get<'life0, 'async_trait>(
        &'life0 self,
        request: Request<GetMulticastGroupRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<GetMulticastGroupResponse>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn update<'life0, 'async_trait>(
        &'life0 self,
        request: Request<UpdateMulticastGroupRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn delete<'life0, 'async_trait>(
        &'life0 self,
        request: Request<DeleteMulticastGroupRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn list<'life0, 'async_trait>(
        &'life0 self,
        request: Request<ListMulticastGroupsRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<ListMulticastGroupsResponse>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn add_device<'life0, 'async_trait>(
        &'life0 self,
        request: Request<AddDeviceToMulticastGroupRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn remove_device<'life0, 'async_trait>(
        &'life0 self,
        request: Request<RemoveDeviceFromMulticastGroupRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn enqueue<'life0, 'async_trait>(
        &'life0 self,
        request: Request<EnqueueMulticastGroupQueueItemRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<EnqueueMulticastGroupQueueItemResponse>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn flush_queue<'life0, 'async_trait>(
        &'life0 self,
        request: Request<FlushMulticastGroupQueueRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<()>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn list_queue<'life0, 'async_trait>(
        &'life0 self,
        request: Request<ListMulticastGroupQueueRequest>
    ) -> Pin<Box<dyn Future<Output = Result<Response<ListMulticastGroupQueueResponse>, Status>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; }
Expand description

Generated trait containing gRPC methods that should be implemented for use with MulticastGroupServiceServer.

Required Methods

Create the given multicast group.

Get returns the multicast group for the given ID.

Update the given multicast group.

Delete the multicast-group with the given ID.

List the available multicast groups.

Add a device to the multicast group.

Remove a device from the multicast group.

Add the given item to the multcast group queue.

Flush the queue for the given multicast group.

List the items in the multicast group queue.

Implementors