#[repr(u64)]pub enum FetchErrorCode {
InternalError = 0,
Unauthorized = 1,
Timeout = 2,
NotSupported = 3,
TrackDoesNotExist = 4,
InvalidRange = 5,
NoObjects = 6,
InvalidJoiningRequestId = 7,
UnknownStatusInRange = 8,
MalformedTrack = 9,
MalformedAuthToken = 16,
ExpiredAuthToken = 18,
}Expand description
FETCH_ERROR codes (draft-12 section 8.18).
Assigns 0x0 through 0x9, then 0x10 and 0x12; 0x11 is unassigned.
The draft names 0x7 inconsistently: the table cell reads “Invalid Joining Request ID” while the definition list below it reads “Invalid Joining Subscribe ID”. The table is the code point assignment and is followed here; draft-14 settles the question by naming the same code INVALID_JOINING_REQUEST_ID.
Variants§
InternalError = 0
Internal Error — An implementation specific or generic error occurred.
Unauthorized — The subscriber is not authorized to fetch from the given track.
Timeout = 2
Timeout — The fetch could not be completed before an implementation specific
timeout. For example, a relay could not FETCH missing objects within the timeout.
NotSupported = 3
Not Supported — The endpoint does not support the FETCH method.
TrackDoesNotExist = 4
Track Does Not Exist — The requested track is not available at the publisher.
InvalidRange = 5
Invalid Range — The end of the requested range is earlier than the beginning, the
start of the requested range is beyond the Largest Location, or the track has not
published any Objects yet.
NoObjects = 6
No Objects — No Objects exist between the requested Start and End Locations.
InvalidJoiningRequestId = 7
Invalid Joining Request ID — The joining Fetch referenced a Request ID that did not
belong to an active Subscription.
UnknownStatusInRange = 8
Unknown Status in Range — The requested range contains objects with unknown status.
MalformedTrack = 9
Malformed Track — A relay publisher detected the track was malformed (see section
2.5).
MalformedAuthToken = 16
Malformed Auth Token — Invalid Auth Token serialization during registration (see
section 8.2.1.1).
ExpiredAuthToken = 18
Expired Auth Token — Authorization token has expired (see section 8.2.1.1).
Implementations§
Source§impl FetchErrorCode
impl FetchErrorCode
Sourcepub const ALL: &[FetchErrorCode]
pub const ALL: &[FetchErrorCode]
Every FETCH_ERROR code draft-12 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.
Trait Implementations§
Source§impl Clone for FetchErrorCode
impl Clone for FetchErrorCode
Source§fn clone(&self) -> FetchErrorCode
fn clone(&self) -> FetchErrorCode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more