コード例 #1
0
ファイル: IpcTransmitter.cs プロジェクト: ss346/NetIpc
        public string ProcessResponse(IIpcResponse response)
        {
            if (response.Success)
            {
                return(null);
            }
            var errorMessage = response.GetData <string>();

            return(errorMessage);
        }
コード例 #2
0
ファイル: MqttIpcClient.cs プロジェクト: popalex/SaltyEmu
        public async Task <TResponse> RequestAsync <TResponse>(IIpcRequest packet) where TResponse : class, IIpcResponse
        {
            // add packet to requests
            PendingRequest request = _requestFactory.Create(packet);

            if (!_pendingRequests.TryAdd(packet.Id, request))
            {
                return(null);
            }

            // create the packet container
            PacketContainer container = _packetFactory.ToPacket(packet.GetType(), packet);

            await SendAsync(container);

            IIpcResponse tmp = await request.Response.Task;

            return(tmp as TResponse);
        }