Skip to main content

SignalPlane

Trait SignalPlane 

Source
pub trait SignalPlane {
    // Required methods
    fn set_members(&mut self, members: Vec<String>);
    fn publish(&mut self, from: String, message: SignalPlaneMessage);
    fn drain_received(&mut self, member: &String) -> Vec<ReceivedSignal>;
}
Expand description

Narrow internal seam for signal dissemination.

Implementations receive authoritative membership as input and disseminate the closed signal vocabulary. They do not expose join, ownership, voting, or bootstrap APIs.

Required Methods§

Source

fn set_members(&mut self, members: Vec<String>)

Replace the admitted-member set this signal plane may talk to.

Source

fn publish(&mut self, from: String, message: SignalPlaneMessage)

Publish a non-authoritative signal from an admitted member.

Source

fn drain_received(&mut self, member: &String) -> Vec<ReceivedSignal>

Drain signals delivered to member.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§