pub enum Event {
MessageReceived {
msg_id: MessageId,
src: SrcLocation,
dst: DstLocation,
msg: Box<MessageReceived>,
},
MemberJoined {
name: XorName,
previous_name: Option<XorName>,
age: u8,
},
MemberLeft {
name: XorName,
age: u8,
},
SectionSplit {
elders: Elders,
self_status_change: NodeElderChange,
},
EldersChanged {
elders: Elders,
self_status_change: NodeElderChange,
},
RelocationStarted {
previous_name: XorName,
},
Relocated {
previous_name: XorName,
new_keypair: Arc<Keypair>,
},
ServiceMsgReceived {
msg_id: MessageId,
msg: Box<ServiceMsg>,
auth: AuthorityProof<ServiceAuth>,
user: EndUser,
dst_location: DstLocation,
},
AdultsChanged {
remaining: BTreeSet<XorName>,
added: BTreeSet<XorName>,
removed: BTreeSet<XorName>,
},
}
Expand description
An Event raised by a Node
or Client
via its event sender.
These are sent by sn_routing to the library’s user. It allows the user to handle requests and responses, and to react to changes in the network.
Request
and Response
events from section locations are only raised once the majority has
been reached, i.e. enough members of the section have sent the same message.
Variants
MessageReceived
Fields
msg_id: MessageId
The message ID
src: SrcLocation
Source location
dst: DstLocation
Destination location
msg: Box<MessageReceived>
The message.
Received a message from another Node.
MemberJoined
A new peer joined our section.
MemberLeft
A node left our section.
SectionSplit
Fields
elders: Elders
The Elders of our section.
self_status_change: NodeElderChange
Promoted, demoted or no change?
Our section has split.
EldersChanged
Fields
elders: Elders
The Elders of our section.
self_status_change: NodeElderChange
Promoted, demoted or no change?
The set of elders in our section has changed.
RelocationStarted
Fields
previous_name: XorName
Previous name before relocation
This node has started relocating to other section. Will be followed by
Relocated
when the node finishes joining the destination section.
Relocated
Fields
previous_name: XorName
Old name before the relocation.
This node has completed relocation to other section.
ServiceMsgReceived
Fields
msg_id: MessageId
The message ID
msg: Box<ServiceMsg>
The content of the message.
auth: AuthorityProof<ServiceAuth>
Data authority
user: EndUser
The end user that sent the message. Its xorname is derived from the client public key, and the socket_id maps against the actual socketaddr
dst_location: DstLocation
DstLocation for the message
Received a message from a peer.
AdultsChanged
Fields
Notify the current list of adult nodes, in case of churning.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Event
impl UnwindSafe for Event
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more