#[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,
MalformedAuthToken = 0x16,
UnknownAuthTokenAlias = 0x17,
ExpiredAuthToken = 0x18,
InvalidAuthority = 0x19,
MalformedAuthority = 0x1A,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum RequestErrorCode {
InternalError = 0x0,
Unauthorized = 0x1,
Timeout = 0x2,
NotSupported = 0x3,
TrackDoesNotExist = 0x4,
InvalidRange = 0x5,
MalformedAuthToken = 0x10,
ExpiredAuthToken = 0x12,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u64)]
pub enum PublishDoneStatusCode {
Normal = 0x0,
Unsubscribed = 0x1,
InternalError = 0x2,
Unauthorized = 0x3,
Unsupported = 0x4,
NotFound = 0x5,
}
impl SessionErrorCode {
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),
0x16 => Some(SessionErrorCode::MalformedAuthToken),
0x17 => Some(SessionErrorCode::UnknownAuthTokenAlias),
0x18 => Some(SessionErrorCode::ExpiredAuthToken),
0x19 => Some(SessionErrorCode::InvalidAuthority),
0x1A => Some(SessionErrorCode::MalformedAuthority),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl RequestErrorCode {
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(RequestErrorCode::InternalError),
0x1 => Some(RequestErrorCode::Unauthorized),
0x2 => Some(RequestErrorCode::Timeout),
0x3 => Some(RequestErrorCode::NotSupported),
0x4 => Some(RequestErrorCode::TrackDoesNotExist),
0x5 => Some(RequestErrorCode::InvalidRange),
0x10 => Some(RequestErrorCode::MalformedAuthToken),
0x12 => Some(RequestErrorCode::ExpiredAuthToken),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}
impl PublishDoneStatusCode {
pub fn from_u64(v: u64) -> Option<Self> {
match v {
0x0 => Some(PublishDoneStatusCode::Normal),
0x1 => Some(PublishDoneStatusCode::Unsubscribed),
0x2 => Some(PublishDoneStatusCode::InternalError),
0x3 => Some(PublishDoneStatusCode::Unauthorized),
0x4 => Some(PublishDoneStatusCode::Unsupported),
0x5 => Some(PublishDoneStatusCode::NotFound),
_ => None,
}
}
pub fn as_u64(self) -> u64 {
self as u64
}
}