public void OnDataReceived(ProtocolBase <TTransportDestType> protocol, IClientCommand action, Type actiontype)
        {
            var data = protocol.ProtocolName != _protocol.ProtocolName
                ? _protocol.CleanData(protocol.GetDataToSend())
                : protocol.GetBody();

            var obj = DeSerializer.Deserialize(actiontype, data);

            action.Execute(this, obj as IClientCommand);
        }