|
| HivePeer (InitRequest request) |
| Initializes a new instance of the HivePeer class. More...
|
|
bool | ValidateOperation (Operation operation, SendParameters sendParameters) |
| Checks if a operation is valid. If the operation is not valid an operation response containing a descriptive error message will be sent to the peer. More...
|
|
void | RemovePeerFromCurrentRoom (int reason, string detail) |
| Checks if the the state of peer is set to a reference of a room. If a room reference is present the peer will be removed from the related room and the reference will be disposed. Disposing the reference allows the associated room factory to remove the room instance if no more references to the room exists. More...
|
|
void | ReleaseRoomReference () |
|
void | OnJoinFailed (ErrorCode result, string details) |
|
virtual bool | IsThisSameSession (HivePeer peer) |
|
virtual void | UpdateSecure (string key, object value) |
|
void | Trace (bool enabled, string tag) |
|
new void | GetTraceStatus (out int traceOptions, out int enableOptions, out string tag) |
|
void | TraceIfEnabledInConnect (string tag) |
| Starts tracing if client connected with PeerId 0xFFFE to signal it wants to be traced (e.g. reconnect after an unexpected disconnect) More...
|
|
void | Initialize (InitRequest initRequest) |
|
override string | ToString () |
|
void | Disconnect (int disconnectError=ErrorCodes.Ok) |
| Closes the connection. More...
|
|
void | AbortConnection () |
| Forces the connection to close immediately. Should only be used if "Disconnect" does not lead to a clean connection shutdown, e.g. in case of an overloaded connection. More...
|
|
void | Flush () |
| Flushes all pending data to the socket. More...
|
|
byte[] | InitializeEncryption (byte[] otherPartyPublicKey) |
| Initializes the peer to receive and send encrypted operations with EncryptionMethod.Sha256Pkcs7. More...
|
|
byte[] | InitializeEncryption (byte[] otherPartyPublicKey, EncryptionMethod mode) |
| Initializes the peer to receive and send encrypted operations. More...
|
|
bool | SetupEncryption (EncryptionData encryptionData, byte channelCount, out short errorCode, out string errorMsg) |
|
SendResult | SendEvent (IEventData eventData, SendParameters sendParameters) |
| Sends an IEventData object to the client. More...
|
|
SendResult | SendMessage (object message, SendParameters sendParameters) |
|
SendResult | SendOperationResponse (OperationResponse operationResponse, SendParameters sendParameters) |
| Sends the operation response to the client. More...
|
|
SendResult | SendDisconnectMessage (DisconnectMessage message, SendParameters sendParameters, int disconnectDelay=DefaultDisconnectInterval) |
|
void | GetStats (out int roundTripTime, out int roundTripTimeVariance, out int numFailures) |
|
void | SetDebugString (string message) |
|
string | GetDebugString () |
|
virtual string | GetHistograms () |
|
SendResult | SendEventAndDisconnect (IEventData eventData, SendParameters sendParameters, int disconnectDelay=DefaultDisconnectInterval, int disconnectCode=ErrorCodes.Ok) |
|
SendResult | SendMessageAndDisconnect (object message, SendParameters sendParameters, int disconnectDelay=DefaultDisconnectInterval, int disconnectCode=ErrorCodes.Ok) |
|
SendResult | SendOperationResponseAndDisconnect (OperationResponse operationResponse, SendParameters sendParameters, int disconnectDelay=DefaultDisconnectInterval) |
| Sends the operation response to the client. More...
|
|
void | ScheduleDisconnect (int disconnectError, int delay) |
| Schedules disconnect for peer. After this call data will be neither accepted from nor sent to client one of use cases is next: send error info and schedule for disconnect. this will give a chance to error information to reach a client More...
|
|
int | GetLastTouch () |
|
void | SetPrivateCustomTypeCache (CustomTypeCache cache) |
| Sets private custom type cache. It is supposed to be used together with plugins. In other case Protocol.TryRegisterCustomType should be used More...
|
|
void | SetInboundController (InboundController controller) |
|
void | Dispose () |
| Disposes the peer. More...
|
|
void | Trace (bool enabled, object tag) |
|
|
virtual void | HandleCreateGameOperation (OperationRequest operationRequest, SendParameters sendParameters) |
|
virtual void | HandleRaiseEventOperation (OperationRequest operationRequest, SendParameters sendParameters) |
| Enqueues RaiseEvent operation requests in the peers current game. More...
|
|
virtual void | HandleSetPropertiesOperation (OperationRequest operationRequest, SendParameters sendParameters) |
| Enqueues SetProperties operation requests in the peers current game. More...
|
|
virtual void | HandleJoinGameOperation (OperationRequest operationRequest, SendParameters sendParameters) |
| Handles the JoinGameRequest to enter a HiveGame. This method removes the peer from any previously joined room, finds the room intended for join and enqueues the operation for it to handle. More...
|
|
virtual bool | MayJoinOrCreateGame (JoinGameRequest joinRequest, out short errorCode, out string errorMsg) |
|
virtual PluginTraits | GetPluginTraits () |
|
virtual void | HandleLeaveOperation (OperationRequest operationRequest, SendParameters sendParameters) |
| Handles the LeaveRequest to leave a HiveGame. More...
|
|
virtual void | HandlePingOperation (OperationRequest operationRequest, SendParameters sendParameters) |
| Handles a ping operation. More...
|
|
virtual void | HandleRpcOperation (OperationRequest request, SendParameters sendParameters) |
| Handles WebRpc operation More...
|
|
override void | OnDisconnect (int reasonCode, string reasonDetail) |
| Called when client disconnects. Ensures that disconnected players leave the game Room. The player is not removed immediately but a message is sent to the room. This avoids threading issues by making sure the player remove is not done concurrently with operations. More...
|
|
override void | OnOperationRequest (OperationRequest operationRequest, SendParameters sendParameters) |
| Called when the client sends an OperationRequest. More...
|
|
void | HandleUnknownOperationCode (OperationRequest operationRequest, SendParameters sendParameters) |
|
virtual void | HandleDebugGameOperation (OperationRequest operationRequest, SendParameters sendParameters) |
|
virtual RoomReference | GetOrCreateRoom (string gameId, params object[] args) |
|
virtual bool | TryCreateRoom (string gameId, out RoomReference roomReference, params object[] args) |
|
virtual bool | TryGetRoomReference (string gameId, out RoomReference roomReference) |
|
virtual bool | TryGetRoomWithoutReference (string gameId, out Room room) |
|
virtual void | OnRoomNotFound (string gameId) |
|
override void | OnDeserializationError (byte[] data, RtsMessageType msgType, string debugMessage, short errorCode=ErrorCodes.UnexpectedData, byte code=0, Exception exception=null) |
| This method is called if incoming data has an unexpected format. Per default this method disconnects the client. Override to change this behavior. More...
|
|
override void | OnSendBufferFull () |
| A send operation failed because of insufficient buffer space. If this happens there is too much reliable data being sent for the available band width. The client is disconnected per default. Override to change the behavior. More...
|
|
override void | OnSendBufferEmpty () |
| The default behavior of OnSendBufferFull is to disconnect the client. If this behavior is changed (override) the inheritor can pause sending until OnSendBufferEmpty is called. More...
|
|
| ClientPeer (InitRequest initRequest) |
|
virtual SendResult | SendData (byte[] data, SendParameters sendParameters) |
| Sends bytes to the client. More...
|
|
virtual void | OnReceive (byte[] data, SendParameters sendParameters) |
| Invoked if incoming data was received for the peer. More...
|
|
void | OnMessageInternal (object message, SendParameters sendParameters) |
|
void | OnOperationRequestInternal (OperationRequest operationRequest, SendParameters sendParameters) |
|
virtual void | Dispose (bool disposing) |
| Disposes the internal fibers. More...
|
|
OperationRequest | ParseOperationRequest (byte[] data, SendParameters sendParameters) |
|
OperationRequest | ParseInternalOperationRequest (byte[] data, SendParameters sendParameters) |
|
object | ParseMessage (byte[] data, SendParameters sendParameters) |
|
byte[] | ParseRawMessage (byte[] data, SendParameters sendParameters) |
|
void | HandleParseError (byte[] data, SendParameters sendParameters, Exception exception, string errorMsg, short errorCode, RtsMessageType msgType, byte operationCode=0) |
|
void | GetTraceStatus (out int traceOptions, out int enableOptions, out string tag) |
|
void | DisconnectAfterSend (int disconnectCode, int disconnectDelay, SendResult result) |
|
virtual void | OnEncryptionQueueOverload (EncryptionQueueFailureParams failureParams) |
|
|
RoomReference | RoomReference [get] |
| Gets or sets a Caching.RoomReference when joining a Room. More...
|
|
Actor | Actor [get, set] |
|
string | UserId [get, protected set] |
|
WebRpcHandler | WebRpcHandler [get, set] |
|
Dictionary< string, object > | AuthCookie [get, protected set] |
|
AuthenticationToken | AuthToken [get, protected set] |
|
int | HttpRpcCallsLimit [get, set] |
|
int | CheckCount [get, set] |
| The count of checks which were performed on this peer while it is in invalid state. More...
|
|
int | LimitMaxUniqPropertyKeysPerPeer = int.MaxValue [get, set] |
|
int | LimitMaxPropertiesSizePerGame = int.MaxValue [get, set] |
|
ConnectionState | ConnectionState [get, set] |
| Gets the ConnectionState for this instance. More...
|
|
string | LocalIP [get] |
| Gets the IP the client connects to. More...
|
|
int | LocalPort [get] |
| Gets the port the client connects to. More...
|
|
NetworkProtocolType | NetworkProtocol [get] |
| Gets the network protocol type used by the peer. More...
|
|
IRpcProtocol | Protocol [get, set] |
| Gets the used IRpcProtocol protocol. More...
|
|
string | RemoteIP [get] |
| Gets the client's remote IP address. More...
|
|
int | RemotePort [get] |
| Gets the port the client connects from. More...
|
|
int | RoundTripTime [get, protected set] |
| Gets the last round trip time for this peer. More...
|
|
int | RoundTripTimeVariance [get, protected set] |
| Gets the last round trip time variance for this peer. More...
|
|
int | NumFailures [get, protected set] |
|
bool | SourceUsingIPv6 [get] |
| If true the peer is using IPv6 to connect to the server, if the server endpoint used is not IPv6 (LocalIPAddressIsIPv6) it means the client is being bridged (DNS64+NAT64), also IsIPv6ToIPv4Bridged. More...
|
|
bool | ClientUsingDebugLib [get] |
|
byte | SdkId [get] |
|
byte | PlatformId [get] |
|
Version | ClientVersion [get, protected set] |
|
DateTime | CreationTime = DateTime.Now [get] |
|
PeerType | PeerType [get] |
| Under laying native peer type More...
|
|
InboundController | PrivateInboundController [get] |
|
int | LastErrorCode [get] |
| last error code that we was sent/set though this peer More...
|
|
Inheritance class of PeerBase.
The LitePeer dispatches incoming OperationRequests at OnOperationRequest. When joining a Room a Caching.RoomReference is stored in the RoomReference property. An IFiber guarantees that all outgoing messages (events/operations) are sent one after the other.