#[repr(u64)]pub enum PublishDoneStatusCode {
InternalError = 0,
Unauthorized = 1,
TrackEnded = 2,
SubscriptionEnded = 3,
GoingAway = 4,
TooFarBehind = 5,
Expired = 6,
UpdateFailed = 8,
ExcessiveLoad = 9,
MalformedTrack = 18,
}Expand description
PUBLISH_DONE Codes (draft-18 Section 15.10.3).
These are the status codes carried in a PUBLISH_DONE message ending a subscription. The per-code definitions live in Section 10.11 of the draft.
The range 0x7f * N + 0x9D is reserved for greasing and has no variant.
Variants§
InternalError = 0
INTERNAL_ERROR — An implementation specific or generic error occurred.
UNAUTHORIZED — The subscriber is no longer authorized to subscribe to
the given track.
TrackEnded = 2
TRACK_ENDED — The track is no longer being published.
SubscriptionEnded = 3
SUBSCRIPTION_ENDED — The publisher reached the end of an associated
subscription filter.
GoingAway = 4
GOING_AWAY — The subscriber or publisher issued a GOAWAY message.
TooFarBehind = 5
TOO_FAR_BEHIND — The publisher’s queue of objects to be sent to the
given subscriber exceeds its implementation defined limit.
Expired = 6
EXPIRED — The publisher reached the timeout specified in SUBSCRIBE_OK.
UpdateFailed = 8
UPDATE_FAILED — REQUEST_UPDATE failed on this subscription (see
Section 10.9).
ExcessiveLoad = 9
EXCESSIVE_LOAD — The publisher is overloaded and is terminating the
subscription.
MalformedTrack = 18
MALFORMED_TRACK — A relay publisher detected that the track was
malformed (see Section 2.4.2).
Implementations§
Source§impl PublishDoneStatusCode
impl PublishDoneStatusCode
Sourcepub const ALL: &[PublishDoneStatusCode]
pub const ALL: &[PublishDoneStatusCode]
Every PUBLISH_DONE Status Code draft-18 assigns, in ascending wire order.
This is the set Self::from_u64 accepts, written out so that it can
be enumerated: nothing can iterate an enum’s variants, so a caller that
wants the registry has to be handed it. Writing it down is also what
lets a test state its claims about the registry itself rather than about
the range some sweep happens to reach — that this is the set from_u64
answers to, and that none of it lands in the range the draft reserves
for greasing.
Trait Implementations§
Source§impl Clone for PublishDoneStatusCode
impl Clone for PublishDoneStatusCode
Source§fn clone(&self) -> PublishDoneStatusCode
fn clone(&self) -> PublishDoneStatusCode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more