|  |  |  |  | #if !BESTHTTP_DISABLE_SIGNALR | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace BestHTTP.SignalR | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Possible transport types. | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     public enum TransportTypes | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Transport using WebSockets. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         WebSocket, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Transport using ServerSentEvents protocol. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         ServerSentEvents, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Transport using long-polling requests. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         LongPoll | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Server sent message types | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     public enum MessageTypes | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// An empty json object {} sent by the server to check keep alive. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         KeepAlive, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// A no-hub message that contains data. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Data, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// A message that can hold multiple data message alongside with other information. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Multiple, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// A method call result. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Result, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// A message about a failed method call. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Failure, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// A message with all information to be able to call a method on the client. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         MethodCall, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// A long running server-method's progress. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Progress | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Possible SignalR Connection states. | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     public enum ConnectionStates | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The initial state of the connection. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Initial, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The client authenticates itself with the server. This state is skipped if no AuthenticationProvider is present. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Authenticating, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The client sent out the negotiation request to the server. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Negotiating, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The client received the negotiation data, created the transport and wait's for the transport's connection. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Connecting, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The transport connected and started successfully. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Connected, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The client started the reconnect process. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Reconnecting, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The connection is closed. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Closed | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Possible types of SignalR requests. | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     public enum RequestTypes | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /negotiate path to negotiate protocol parameters. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Negotiate, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /connect path to connect to the server. With long-polling, it's like a regular poll request. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Connect, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /start path to start the protocol. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Start, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /poll path to get new messages. Not used with the WebSocketTransport. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Poll, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /send path to send a message to the server. Not used with the WebSocketTransport. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Send, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /reconnect path to initiate a reconnection. It's used instead of the Connect type. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Reconnect, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /abort path to close the connection. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Abort, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Request to the /ping path to ping the server keeping the asp.net session alive. | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Ping | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// Possible states of a transport. | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     public enum TransportStates | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Initial state | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Initial, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Connecting | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Connecting, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Reconnecting | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Reconnecting, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Sending Start request | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Starting, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Start request finished successfully | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Started, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// Sending Abort request | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Closing, | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// The transport closed after Abort request sent | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         Closed | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | #endif |