Exemple #1
0
        private void SendResponse(Response response, ClientConnection clientConnection, NodeConnection nodeConnection)
        {
            byte[] responseData = ObjectSerializer.CommunicationObjectToBytes(response);
            if (clientConnection.IsEncryptedConnection)
            {
                responseData = Encryptor.SymmetricDataEncrypt(
                    responseData,
                    NodeData.Instance.NodeKeys.SignPrivateKey,
                    clientConnection.SymmetricKey,
                    MessageDataType.Response,
                    NodeData.Instance.NodeKeys.Password);
            }
            ProxyUsersCommunicationsNodeResponse nodeResponse = new ProxyUsersCommunicationsNodeResponse(request.RequestId, responseData, request.UserId, request.UserPublicKey);

            NodeWebSocketCommunicationManager.SendResponse(nodeResponse, nodeConnection);
            if (response.ResponseType == ResponseType.EncryptedKey)
            {
                clientConnection.SentKey = true;
            }
        }
 public ProxyUsersCommunicationsNodeResponseHandler(NodeResponse response, IConnectionsService connectionsService)
 {
     this.response           = (ProxyUsersCommunicationsNodeResponse)response;
     this.connectionsService = connectionsService;
 }