1 use crate::amf0::errors::Amf0WriteError; 2 use crate::chunk::errors::PackError; 3 use crate::chunk::errors::UnpackError; 4 use crate::handshake::errors::HandshakeError; 5 use crate::messages::errors::MessageError; 6 use crate::netconnection::errors::NetConnectionError; 7 use crate::netstream::errors::NetStreamError; 8 use crate::protocol_control_messages::errors::ControlMessagesError; 9 use crate::user_control_messages::errors::EventMessagesError; 10 11 use netio::bytes_errors::BytesWriteError; 12 use netio::netio_errors::NetIOError; 13 14 use tokio::time::Elapsed; 15 16 // pub struct ServerError { 17 // pub value: ServerErrorValue, 18 // } 19 20 // pub enum ServerErrorValue { 21 // Amf0WriteError(Amf0WriteError), 22 // BytesWriteError(BytesWriteError), 23 // TimeoutError(Elapsed), 24 // UnPackError(UnpackError), 25 // MessageError(MessageError), 26 // ControlMessagesError(ControlMessagesError), 27 // NetConnectionError(NetConnectionError), 28 // NetStreamError(NetStreamError), 29 // EventMessagesError(EventMessagesError), 30 // NetIOError(NetIOError), 31 // PackError(PackError), 32 // Amf0ValueCountNotCorrect, 33 // Amf0ValueTypeNotCorrect, 34 // } 35 36 // impl From<Amf0WriteError> for ServerError { 37 // fn from(error: Amf0WriteError) -> Self { 38 // ServerError { 39 // value: ServerErrorValue::Amf0WriteError(error), 40 // } 41 // } 42 // } 43 44 // impl From<BytesWriteError> for ServerError { 45 // fn from(error: BytesWriteError) -> Self { 46 // ServerError { 47 // value: ServerErrorValue::BytesWriteError(error), 48 // } 49 // } 50 // } 51 52 // impl From<Elapsed> for ServerError { 53 // fn from(error: Elapsed) -> Self { 54 // ServerError { 55 // value: ServerErrorValue::TimeoutError(error), 56 // } 57 // } 58 // } 59 60 // impl From<UnpackError> for ServerError { 61 // fn from(error: UnpackError) -> Self { 62 // ServerError { 63 // value: ServerErrorValue::UnPackError(error), 64 // } 65 // } 66 // } 67 68 // impl From<MessageError> for ServerError { 69 // fn from(error: MessageError) -> Self { 70 // ServerError { 71 // value: ServerErrorValue::MessageError(error), 72 // } 73 // } 74 // } 75 76 // impl From<ControlMessagesError> for ServerError { 77 // fn from(error: ControlMessagesError) -> Self { 78 // ServerError { 79 // value: ServerErrorValue::ControlMessagesError(error), 80 // } 81 // } 82 // } 83 84 // impl From<NetConnectionError> for ServerError { 85 // fn from(error: NetConnectionError) -> Self { 86 // ServerError { 87 // value: ServerErrorValue::NetConnectionError(error), 88 // } 89 // } 90 // } 91 92 // impl From<NetStreamError> for ServerError { 93 // fn from(error: NetStreamError) -> Self { 94 // ServerError { 95 // value: ServerErrorValue::NetStreamError(error), 96 // } 97 // } 98 // } 99 100 // impl From<EventMessagesError> for ServerError { 101 // fn from(error: EventMessagesError) -> Self { 102 // ServerError { 103 // value: ServerErrorValue::EventMessagesError(error), 104 // } 105 // } 106 // } 107 108 // impl From<NetIOError> for ServerError { 109 // fn from(error: NetIOError) -> Self { 110 // ServerError { 111 // value: ServerErrorValue::NetIOError(error), 112 // } 113 // } 114 // } 115 116 pub struct SessionError { 117 pub value: SessionErrorValue, 118 } 119 120 pub enum SessionErrorValue { 121 Amf0WriteError(Amf0WriteError), 122 BytesWriteError(BytesWriteError), 123 TimeoutError(Elapsed), 124 UnPackError(UnpackError), 125 MessageError(MessageError), 126 ControlMessagesError(ControlMessagesError), 127 NetConnectionError(NetConnectionError), 128 NetStreamError(NetStreamError), 129 EventMessagesError(EventMessagesError), 130 NetIOError(NetIOError), 131 PackError(PackError), 132 HandshakeError(HandshakeError), 133 134 Amf0ValueCountNotCorrect, 135 Amf0ValueTypeNotCorrect, 136 } 137 138 impl From<Amf0WriteError> for SessionError { 139 fn from(error: Amf0WriteError) -> Self { 140 SessionError { 141 value: SessionErrorValue::Amf0WriteError(error), 142 } 143 } 144 } 145 146 impl From<BytesWriteError> for SessionError { 147 fn from(error: BytesWriteError) -> Self { 148 SessionError { 149 value: SessionErrorValue::BytesWriteError(error), 150 } 151 } 152 } 153 154 impl From<Elapsed> for SessionError { 155 fn from(error: Elapsed) -> Self { 156 SessionError { 157 value: SessionErrorValue::TimeoutError(error), 158 } 159 } 160 } 161 162 impl From<UnpackError> for SessionError { 163 fn from(error: UnpackError) -> Self { 164 SessionError { 165 value: SessionErrorValue::UnPackError(error), 166 } 167 } 168 } 169 170 impl From<MessageError> for SessionError { 171 fn from(error: MessageError) -> Self { 172 SessionError { 173 value: SessionErrorValue::MessageError(error), 174 } 175 } 176 } 177 178 impl From<ControlMessagesError> for SessionError { 179 fn from(error: ControlMessagesError) -> Self { 180 SessionError { 181 value: SessionErrorValue::ControlMessagesError(error), 182 } 183 } 184 } 185 186 impl From<NetConnectionError> for SessionError { 187 fn from(error: NetConnectionError) -> Self { 188 SessionError { 189 value: SessionErrorValue::NetConnectionError(error), 190 } 191 } 192 } 193 194 impl From<NetStreamError> for SessionError { 195 fn from(error: NetStreamError) -> Self { 196 SessionError { 197 value: SessionErrorValue::NetStreamError(error), 198 } 199 } 200 } 201 202 impl From<EventMessagesError> for SessionError { 203 fn from(error: EventMessagesError) -> Self { 204 SessionError { 205 value: SessionErrorValue::EventMessagesError(error), 206 } 207 } 208 } 209 210 impl From<NetIOError> for SessionError { 211 fn from(error: NetIOError) -> Self { 212 SessionError { 213 value: SessionErrorValue::NetIOError(error), 214 } 215 } 216 } 217 218 impl From<PackError> for SessionError { 219 fn from(error: PackError) -> Self { 220 SessionError { 221 value: SessionErrorValue::PackError(error), 222 } 223 } 224 } 225 226 impl From<HandshakeError> for SessionError { 227 fn from(error: HandshakeError) -> Self { 228 SessionError { 229 value: SessionErrorValue::HandshakeError(error), 230 } 231 } 232 } 233