PhotonWire.Server.ServerToServer.PhotonWireOutboundS2SPeer.OnOperationResponse C# (CSharp) Method

OnOperationResponse() protected method

protected OnOperationResponse ( OperationResponse operationResponse, SendParameters sendParameters ) : void
operationResponse OperationResponse
sendParameters SendParameters
return void
        protected override void OnOperationResponse(OperationResponse operationResponse, SendParameters sendParameters)
        {
            // receive

            object messageId;
            if (!operationResponse.Parameters.TryGetValue(ReservedParameterNo.MessageId, out messageId))
            {
                return;
            }

            TaskCompletionSource<OperationResponse> future;
            if (TryGetAndRemoveFuture((int)messageId, out future))
            {
                if (operationResponse.ReturnCode == 0)
                {
                    future.TrySetResult(operationResponse);
                }
                else
                {
                    future.TrySetException(new ServerResponseErrorException(operationResponse.ReturnCode, operationResponse.DebugMessage ?? ""));
                }
            }
            else
            {
                // canceled, already removed
            }
        }