This is the default server implementation of BindingBehavior.

Hierarchy (view full)

Constructors

Properties

[reference]: Datasource<StateType>
agent: Agent
cluster: never

The implemented cluster.

context: ActionContext
endpoint: Endpoint<Empty>
events: EventEmitter & Omit<Events, never> & {
    binding$Changing: ClusterEvents.AttributeObservable<WritableFabricScopedAttribute<TypeFromFields<{
        cluster: OptionalFieldType<ClusterId>;
        endpoint: OptionalFieldType<EndpointNumber>;
        fabricIndex: FieldType<FabricIndex>;
        group: OptionalFieldType<GroupId>;
        node: OptionalFieldType<NodeId>;
    }>[], any>>;
} & {} & {
    binding$Changed: ClusterEvents.AttributeObservable<WritableFabricScopedAttribute<TypeFromFields<{
        cluster: OptionalFieldType<ClusterId>;
        endpoint: OptionalFieldType<EndpointNumber>;
        fabricIndex: FieldType<FabricIndex>;
        group: OptionalFieldType<GroupId>;
        node: OptionalFieldType<NodeId>;
    }>[], any>>;
} & {} & {} & {}

Access the behavior's events.

features: TypeFromBitSchema<{}>

Supported features as a flag object.

session: SecureSession
state: Omit<{}, never> & {
    binding: TypeFromFields<{
        cluster: OptionalFieldType<ClusterId>;
        endpoint: OptionalFieldType<EndpointNumber>;
        fabricIndex: FieldType<FabricIndex>;
        group: OptionalFieldType<GroupId>;
        node: OptionalFieldType<NodeId>;
    }>[];
} & {} & {} & {}

Access the behavior's state.

Type declaration

cluster: Binding.Cluster

Base cluster state include all attribute values but may be extended by subclasses.

defaults: ClusterState.Type<Binding.Cluster, typeof ClusterBehavior>
dependencies?: Iterable<Type, any, any>
early: boolean
Events: ClusterEvents.Type<Binding.Cluster, typeof ClusterBehavior>
ExtensionInterface: {}
id

The behavior ID for ClusterBehaviors is the name of the cluster.

Interface: {
    components: never[];
}
Internal: (new () => {})
name: string
schema?: Schema
State: (new () => ClusterState.Type<Binding.Cluster, typeof ClusterBehavior>)
supervisor: RootSupervisor
supports: ((other: Type) => boolean)

Type declaration

    • (other): boolean
    • Does this behavior support functionality of a specific implementation?

      Parameters

      Returns boolean

Methods

  • Create a generic callback function that has the same properties as a Reactor.

    Like a reactor, the callback's "this" will be bound to an active Behavior instance. Because of this: The reactor MUST be a real JS function - arrow functions will not work!

    Type Parameters

    • A extends any[]
    • R

    Parameters

    Returns ((...args: A) => undefined | R)

      • (...args): undefined | R
      • Parameters

        • Rest...args: A

        Returns undefined | R