#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum SessionErrorCode {
NoError = 0x0,
InternalError = 0x1,
Unauthorized = 0x2,
ProtocolViolation = 0x3,
InvalidRequestId = 0x4,
DuplicateTrackAlias = 0x5,
KeyValueFormattingError = 0x6,
TooManyRequests = 0x7,
InvalidPath = 0x8,
MalformedPath = 0x9,
GoawayTimeout = 0x10,
ControlMessageTimeout = 0x11,
DataStreamTimeout = 0x12,
AuthTokenCacheOverflow = 0x13,
DuplicateAuthTokenAlias = 0x14,
VersionNegotiationFailed = 0x15,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum SubscribeErrorCode {
InternalError = 0x0,
Unauthorized = 0x1,
Timeout = 0x2,
NotSupported = 0x3,
TrackDoesNotExist = 0x4,
InvalidRange = 0x5,
RetryTrackAlias = 0x6,
MalformedAuthToken = 0x10,
UnknownAuthTokenAlias = 0x11,
ExpiredAuthToken = 0x12,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum SubscribeDoneStatusCode {
InternalError = 0x0,
Unauthorized = 0x1,
TrackEnded = 0x2,
SubscriptionEnded = 0x3,
GoingAway = 0x4,
Expired = 0x5,
TooFarBehind = 0x6,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum FetchErrorCode {
InternalError = 0x0,
Unauthorized = 0x1,
Timeout = 0x2,
NotSupported = 0x3,
TrackDoesNotExist = 0x4,
InvalidRange = 0x5,
NoObjects = 0x6,
InvalidJoiningSubscribeId = 0x7,
MalformedAuthToken = 0x10,
UnknownAuthTokenAlias = 0x11,
ExpiredAuthToken = 0x12,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum AnnounceErrorCode {
InternalError = 0x0,
Unauthorized = 0x1,
Timeout = 0x2,
NotSupported = 0x3,
Uninterested = 0x4,
MalformedAuthToken = 0x10,
UnknownAuthTokenAlias = 0x11,
ExpiredAuthToken = 0x12,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum SubscribeAnnouncesErrorCode {
InternalError = 0x0,
Unauthorized = 0x1,
Timeout = 0x2,
NotSupported = 0x3,
NamespacePrefixUnknown = 0x4,
NamespacePrefixOverlap = 0x5,
MalformedAuthToken = 0x10,
UnknownAuthTokenAlias = 0x11,
ExpiredAuthToken = 0x12,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum TrackStatusCode {
InProgress = 0x00,
TrackDoesNotExist = 0x01,
NotYetBegun = 0x02,
Finished = 0x03,
RelayStatusUnavailable = 0x04,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum StreamResetErrorCode {
InternalError = 0x0,
Cancelled = 0x1,
DeliveryTimeout = 0x2,
SessionClosed = 0x3,
}
impl SessionErrorCode {
pub const ALL: &[SessionErrorCode] = &[
SessionErrorCode::NoError,
SessionErrorCode::InternalError,
SessionErrorCode::Unauthorized,
SessionErrorCode::ProtocolViolation,
SessionErrorCode::InvalidRequestId,
SessionErrorCode::DuplicateTrackAlias,
SessionErrorCode::KeyValueFormattingError,
SessionErrorCode::TooManyRequests,
SessionErrorCode::InvalidPath,
SessionErrorCode::MalformedPath,
SessionErrorCode::GoawayTimeout,
SessionErrorCode::ControlMessageTimeout,
SessionErrorCode::DataStreamTimeout,
SessionErrorCode::AuthTokenCacheOverflow,
SessionErrorCode::DuplicateAuthTokenAlias,
SessionErrorCode::VersionNegotiationFailed,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(SessionErrorCode::NoError),
0x1 => Some(SessionErrorCode::InternalError),
0x2 => Some(SessionErrorCode::Unauthorized),
0x3 => Some(SessionErrorCode::ProtocolViolation),
0x4 => Some(SessionErrorCode::InvalidRequestId),
0x5 => Some(SessionErrorCode::DuplicateTrackAlias),
0x6 => Some(SessionErrorCode::KeyValueFormattingError),
0x7 => Some(SessionErrorCode::TooManyRequests),
0x8 => Some(SessionErrorCode::InvalidPath),
0x9 => Some(SessionErrorCode::MalformedPath),
0x10 => Some(SessionErrorCode::GoawayTimeout),
0x11 => Some(SessionErrorCode::ControlMessageTimeout),
0x12 => Some(SessionErrorCode::DataStreamTimeout),
0x13 => Some(SessionErrorCode::AuthTokenCacheOverflow),
0x14 => Some(SessionErrorCode::DuplicateAuthTokenAlias),
0x15 => Some(SessionErrorCode::VersionNegotiationFailed),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl SubscribeErrorCode {
pub const ALL: &[SubscribeErrorCode] = &[
SubscribeErrorCode::InternalError,
SubscribeErrorCode::Unauthorized,
SubscribeErrorCode::Timeout,
SubscribeErrorCode::NotSupported,
SubscribeErrorCode::TrackDoesNotExist,
SubscribeErrorCode::InvalidRange,
SubscribeErrorCode::RetryTrackAlias,
SubscribeErrorCode::MalformedAuthToken,
SubscribeErrorCode::UnknownAuthTokenAlias,
SubscribeErrorCode::ExpiredAuthToken,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(SubscribeErrorCode::InternalError),
0x1 => Some(SubscribeErrorCode::Unauthorized),
0x2 => Some(SubscribeErrorCode::Timeout),
0x3 => Some(SubscribeErrorCode::NotSupported),
0x4 => Some(SubscribeErrorCode::TrackDoesNotExist),
0x5 => Some(SubscribeErrorCode::InvalidRange),
0x6 => Some(SubscribeErrorCode::RetryTrackAlias),
0x10 => Some(SubscribeErrorCode::MalformedAuthToken),
0x11 => Some(SubscribeErrorCode::UnknownAuthTokenAlias),
0x12 => Some(SubscribeErrorCode::ExpiredAuthToken),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl SubscribeDoneStatusCode {
pub const ALL: &[SubscribeDoneStatusCode] = &[
SubscribeDoneStatusCode::InternalError,
SubscribeDoneStatusCode::Unauthorized,
SubscribeDoneStatusCode::TrackEnded,
SubscribeDoneStatusCode::SubscriptionEnded,
SubscribeDoneStatusCode::GoingAway,
SubscribeDoneStatusCode::Expired,
SubscribeDoneStatusCode::TooFarBehind,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(SubscribeDoneStatusCode::InternalError),
0x1 => Some(SubscribeDoneStatusCode::Unauthorized),
0x2 => Some(SubscribeDoneStatusCode::TrackEnded),
0x3 => Some(SubscribeDoneStatusCode::SubscriptionEnded),
0x4 => Some(SubscribeDoneStatusCode::GoingAway),
0x5 => Some(SubscribeDoneStatusCode::Expired),
0x6 => Some(SubscribeDoneStatusCode::TooFarBehind),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl FetchErrorCode {
pub const ALL: &[FetchErrorCode] = &[
FetchErrorCode::InternalError,
FetchErrorCode::Unauthorized,
FetchErrorCode::Timeout,
FetchErrorCode::NotSupported,
FetchErrorCode::TrackDoesNotExist,
FetchErrorCode::InvalidRange,
FetchErrorCode::NoObjects,
FetchErrorCode::InvalidJoiningSubscribeId,
FetchErrorCode::MalformedAuthToken,
FetchErrorCode::UnknownAuthTokenAlias,
FetchErrorCode::ExpiredAuthToken,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(FetchErrorCode::InternalError),
0x1 => Some(FetchErrorCode::Unauthorized),
0x2 => Some(FetchErrorCode::Timeout),
0x3 => Some(FetchErrorCode::NotSupported),
0x4 => Some(FetchErrorCode::TrackDoesNotExist),
0x5 => Some(FetchErrorCode::InvalidRange),
0x6 => Some(FetchErrorCode::NoObjects),
0x7 => Some(FetchErrorCode::InvalidJoiningSubscribeId),
0x10 => Some(FetchErrorCode::MalformedAuthToken),
0x11 => Some(FetchErrorCode::UnknownAuthTokenAlias),
0x12 => Some(FetchErrorCode::ExpiredAuthToken),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl AnnounceErrorCode {
pub const ALL: &[AnnounceErrorCode] = &[
AnnounceErrorCode::InternalError,
AnnounceErrorCode::Unauthorized,
AnnounceErrorCode::Timeout,
AnnounceErrorCode::NotSupported,
AnnounceErrorCode::Uninterested,
AnnounceErrorCode::MalformedAuthToken,
AnnounceErrorCode::UnknownAuthTokenAlias,
AnnounceErrorCode::ExpiredAuthToken,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(AnnounceErrorCode::InternalError),
0x1 => Some(AnnounceErrorCode::Unauthorized),
0x2 => Some(AnnounceErrorCode::Timeout),
0x3 => Some(AnnounceErrorCode::NotSupported),
0x4 => Some(AnnounceErrorCode::Uninterested),
0x10 => Some(AnnounceErrorCode::MalformedAuthToken),
0x11 => Some(AnnounceErrorCode::UnknownAuthTokenAlias),
0x12 => Some(AnnounceErrorCode::ExpiredAuthToken),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl SubscribeAnnouncesErrorCode {
pub const ALL: &[SubscribeAnnouncesErrorCode] = &[
SubscribeAnnouncesErrorCode::InternalError,
SubscribeAnnouncesErrorCode::Unauthorized,
SubscribeAnnouncesErrorCode::Timeout,
SubscribeAnnouncesErrorCode::NotSupported,
SubscribeAnnouncesErrorCode::NamespacePrefixUnknown,
SubscribeAnnouncesErrorCode::NamespacePrefixOverlap,
SubscribeAnnouncesErrorCode::MalformedAuthToken,
SubscribeAnnouncesErrorCode::UnknownAuthTokenAlias,
SubscribeAnnouncesErrorCode::ExpiredAuthToken,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(SubscribeAnnouncesErrorCode::InternalError),
0x1 => Some(SubscribeAnnouncesErrorCode::Unauthorized),
0x2 => Some(SubscribeAnnouncesErrorCode::Timeout),
0x3 => Some(SubscribeAnnouncesErrorCode::NotSupported),
0x4 => Some(SubscribeAnnouncesErrorCode::NamespacePrefixUnknown),
0x5 => Some(SubscribeAnnouncesErrorCode::NamespacePrefixOverlap),
0x10 => Some(SubscribeAnnouncesErrorCode::MalformedAuthToken),
0x11 => Some(SubscribeAnnouncesErrorCode::UnknownAuthTokenAlias),
0x12 => Some(SubscribeAnnouncesErrorCode::ExpiredAuthToken),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl TrackStatusCode {
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x00 => Some(TrackStatusCode::InProgress),
0x01 => Some(TrackStatusCode::TrackDoesNotExist),
0x02 => Some(TrackStatusCode::NotYetBegun),
0x03 => Some(TrackStatusCode::Finished),
0x04 => Some(TrackStatusCode::RelayStatusUnavailable),
_ => None,
}
}
pub fn requires_zero_location(self) -> bool {
matches!(self, TrackStatusCode::TrackDoesNotExist | TrackStatusCode::NotYetBegun)
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl StreamResetErrorCode {
pub const ALL: &[StreamResetErrorCode] = &[
StreamResetErrorCode::InternalError,
StreamResetErrorCode::Cancelled,
StreamResetErrorCode::DeliveryTimeout,
StreamResetErrorCode::SessionClosed,
];
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(StreamResetErrorCode::InternalError),
0x1 => Some(StreamResetErrorCode::Cancelled),
0x2 => Some(StreamResetErrorCode::DeliveryTimeout),
0x3 => Some(StreamResetErrorCode::SessionClosed),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}