pub trait ClusterAsyncHandler {
const CLUSTER: Cluster<'static>;
Show 14 methods
// Required methods
fn dataver(&self) -> u32;
fn dataver_changed(&self);
async fn scene_table_size(
&self,
ctx: impl ReadContext,
) -> Result<u16, Error>;
async fn fabric_scene_info<P>(
&self,
ctx: impl ReadContext,
builder: ArrayAttributeRead<SceneInfoStructArrayBuilder<P>, SceneInfoStructBuilder<P>>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_add_scene<P>(
&self,
ctx: impl InvokeContext,
request: AddSceneRequest<'_>,
response: AddSceneResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_view_scene<P>(
&self,
ctx: impl InvokeContext,
request: ViewSceneRequest<'_>,
response: ViewSceneResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_remove_scene<P>(
&self,
ctx: impl InvokeContext,
request: RemoveSceneRequest<'_>,
response: RemoveSceneResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_remove_all_scenes<P>(
&self,
ctx: impl InvokeContext,
request: RemoveAllScenesRequest<'_>,
response: RemoveAllScenesResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_store_scene<P>(
&self,
ctx: impl InvokeContext,
request: StoreSceneRequest<'_>,
response: StoreSceneResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_recall_scene(
&self,
ctx: impl InvokeContext,
request: RecallSceneRequest<'_>,
) -> Result<(), Error>;
async fn handle_get_scene_membership<P>(
&self,
ctx: impl InvokeContext,
request: GetSceneMembershipRequest<'_>,
response: GetSceneMembershipResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
async fn handle_copy_scene<P>(
&self,
ctx: impl InvokeContext,
request: CopySceneRequest<'_>,
response: CopySceneResponseBuilder<P>,
) -> Result<P, Error>
where P: TLVBuilderParent;
// Provided methods
fn lifecycle(
&self,
_ctx: impl HandlerContext,
_op: LifecycleOp,
) -> Result<(), Error> { ... }
fn run(
&self,
_ctx: impl HandlerContext,
) -> impl Future<Output = Result<(), Error>> { ... }
}Expand description
The handler trait for the cluster.
Required Associated Constants§
Required Methods§
fn dataver(&self) -> u32
fn dataver_changed(&self)
async fn scene_table_size(&self, ctx: impl ReadContext) -> Result<u16, Error>
async fn fabric_scene_info<P>(
&self,
ctx: impl ReadContext,
builder: ArrayAttributeRead<SceneInfoStructArrayBuilder<P>, SceneInfoStructBuilder<P>>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_add_scene<P>(
&self,
ctx: impl InvokeContext,
request: AddSceneRequest<'_>,
response: AddSceneResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_view_scene<P>(
&self,
ctx: impl InvokeContext,
request: ViewSceneRequest<'_>,
response: ViewSceneResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_remove_scene<P>(
&self,
ctx: impl InvokeContext,
request: RemoveSceneRequest<'_>,
response: RemoveSceneResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_remove_all_scenes<P>(
&self,
ctx: impl InvokeContext,
request: RemoveAllScenesRequest<'_>,
response: RemoveAllScenesResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_store_scene<P>(
&self,
ctx: impl InvokeContext,
request: StoreSceneRequest<'_>,
response: StoreSceneResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_recall_scene( &self, ctx: impl InvokeContext, request: RecallSceneRequest<'_>, ) -> Result<(), Error>
async fn handle_get_scene_membership<P>(
&self,
ctx: impl InvokeContext,
request: GetSceneMembershipRequest<'_>,
response: GetSceneMembershipResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
async fn handle_copy_scene<P>(
&self,
ctx: impl InvokeContext,
request: CopySceneRequest<'_>,
response: CopySceneResponseBuilder<P>,
) -> Result<P, Error>where
P: TLVBuilderParent,
Provided Methods§
fn lifecycle( &self, _ctx: impl HandlerContext, _op: LifecycleOp, ) -> Result<(), Error>
fn run( &self, _ctx: impl HandlerContext, ) -> impl Future<Output = Result<(), Error>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".