Compare commits

..

No commits in common. "445c836252f3269cedf634dd81cc0d0133aca994" and "1aee05afa3f6b24fea6c7b7101f10edc83ec62f4" have entirely different histories.

13 changed files with 119 additions and 274 deletions

Binary file not shown.

Binary file not shown.

View File

@ -39,15 +39,10 @@ params [["_taskType", "", [""]], ["_key", "", [""]], ["_keyField", "", [""]], ["
private _task = [_taskType, _key, _keyField, _index, _value, _function, _call, _netId]; private _task = [_taskType, _key, _keyField, _index, _value, _function, _call, _netId];
#ifdef __ARMA__DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Added Task '%1' to Queue", _task];
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Added Task '%1' to Queue", _task];
#endif
GVAR(taskQueue) pushBack _task; GVAR(taskQueue) pushBack _task;
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue: %1", GVAR(taskQueue)];
#ifdef __ARMA__DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue Size: %1", count GVAR(taskQueue)];
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue: %1", GVAR(taskQueue)];
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_addTask' Queue Size: %1", count GVAR(taskQueue)];
#endif
if !(GVAR(isProcessing)) then { [] spawn FUNC(processQueue); }; if !(GVAR(isProcessing)) then { [] spawn FUNC(processQueue); };

View File

@ -20,15 +20,13 @@
["uniqueID", "function", "index", "indextotal", "datachunk", "call", "netId"] ["uniqueID", "function", "index", "indextotal", "datachunk", "call", "netId"]
*/ */
#ifdef __A3__DEBUG__ diag_log _this;
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_fetch' Input: %1", _this];
#endif
params ["_uniqueID", "_function", "_index", "_total", "_datachunk", "_call", "_netId"]; params ["_uniqueID", "_function", "_index", "_total", "_datachunk", "_call", "_netId"];
private _dataString = ""; private _dataString = "";
private _index_array = []; private _index_array = [];
private _count_total = 0; private _count_total = -1;
dragonfly_db_fetch_array pushBackUnique [_uniqueID, _function, _index, _total, _datachunk, _call, _netId]; dragonfly_db_fetch_array pushBackUnique [_uniqueID, _function, _index, _total, _datachunk, _call, _netId];
@ -44,17 +42,13 @@ _count_total = {
if (_count_total == _total) then { if (_count_total == _total) then {
_index_array sort true; _index_array sort true;
{ for "_i" from 0 to (_total - 1) do {
_dataString = _dataString + (_x select 1); _dataString = _dataString + ((_index_array select _i) select 1);
} forEach _index_array; };
#ifdef __ARMA__DEBUG__ diag_log _dataString;
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_fetch' Data String: %1", _dataString];
#endif
private _callValue = (_call == "true"); [_uniqueID, _function, _call, (parseSimpleArray _dataString), _netId] call FUNC(handler);
[_uniqueID, _function, _callValue, (parseSimpleArray _dataString), _netId] call FUNC(handler);
dragonfly_db_fetch_array = dragonfly_db_fetch_array select {!((_x select 0) in [_uniqueID])}; dragonfly_db_fetch_array = dragonfly_db_fetch_array select {!((_x select 0) in [_uniqueID])};
}; };

View File

@ -41,123 +41,25 @@ while { count GVAR(taskQueue) > 0} do {
private _call = _task select 6; private _call = _task select 6;
private _netId = _task select 7; private _netId = _task select 7;
#ifdef __ARMA__DEBUG__ diag_log text format ["Initializing Task: %1", _task];
diag_log text format ["Initializing Task: %1", _task];
#endif
switch (_taskType) do { switch (_taskType) do {
case "get": { case "get": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _function, _call, _netId] call FUNC(get); };
#ifdef __ARMA_DEBUG__ case "set": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _value] call FUNC(set); };
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; case "del": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key] call FUNC(delete); };
#endif case "hget": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_keyField, _function, _call, _netId] call FUNC(hashGet); };
case "hgetid": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _keyField, _function, _call, _netId] call FUNC(hashGetId); };
[_key, _function, _call, _netId] call FUNC(get); case "hgetall": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_function, _call, _netId] call FUNC(hashGetAll); };
}; case "hgetallid": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _function, _call, _netId] call FUNC(hashGetAllId); };
case "set": { case "hset": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_keyField, _value] call FUNC(hashSet); };
#ifdef __ARMA_DEBUG__ case "hsetbulk": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_value] call FUNC(hashSetBulk); };
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; case "hsetid": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _keyField, _value] call FUNC(hashSetId); };
#endif case "hsetidbulk": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_value] call FUNC(hashSetIdBulk); };
case "listadd": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _value] call FUNC(listAdd); };
[_key, _value] call FUNC(set); case "listidx": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _index, _function, _call, _netId] call FUNC(listGet); };
}; case "listrng": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _function, _call, _netId] call FUNC(listLoad); };
case "del": { case "listrem": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _index] call FUNC(listRemove); };
#ifdef __ARMA_DEBUG__ case "listset": { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType]; [_key, _index, _value] call FUNC(listSet); };
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key] call FUNC(delete);
};
case "hget": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_keyField, _function, _call, _netId] call FUNC(hashGet);
};
case "hgetid": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _keyField, _function, _call, _netId] call FUNC(hashGetId);
};
case "hgetall": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_function, _call, _netId] call FUNC(hashGetAll);
};
case "hgetallid": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _function, _call, _netId] call FUNC(hashGetAllId);
};
case "hset": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_keyField, _value] call FUNC(hashSet);
};
case "hsetbulk": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_value] call FUNC(hashSetBulk);
};
case "hsetid": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _keyField, _value] call FUNC(hashSetId);
};
case "hsetidbulk": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_value] call FUNC(hashSetIdBulk);
};
case "listadd": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _value] call FUNC(listAdd);
};
case "listidx": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _index, _function, _call, _netId] call FUNC(listGet);
};
case "listrng": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _function, _call, _netId] call FUNC(listLoad);
};
case "listrem": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _index] call FUNC(listRemove);
};
case "listset": {
#ifdef __ARMA_DEBUG__
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_processQueue' Processing Task '%1'", _taskType];
#endif
[_key, _index, _value] call FUNC(listSet);
};
}; };
sleep 1; sleep 1;

View File

@ -46,9 +46,7 @@ if (_count_total == _total) then {
_dataString = _dataString + ((_index_array select _i) select 1); _dataString = _dataString + ((_index_array select _i) select 1);
}; };
#ifdef __ARMA_DEBUG__ diag_log _dataString;
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_pubSubFetch' Data String: %1", _dataString];
#endif
[_uniqueID, _eventType, _eventName, (parseSimpleArray _dataString), _target] call FUNC(pubSubHandler); [_uniqueID, _eventType, _eventName, (parseSimpleArray _dataString), _target] call FUNC(pubSubHandler);

View File

@ -45,8 +45,6 @@ private _formattedArgs = _args apply { if (_x isEqualType "") then { str _x } el
private _extensionArgs = _formattedArgs joinString ","; private _extensionArgs = _formattedArgs joinString ",";
private _result = "ArmaDragonflyClient" callExtension ["publish", [_extensionArgs]]; private _result = "ArmaDragonflyClient" callExtension ["publish", [_extensionArgs]];
#ifdef __ARMA_DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_publish' Published message to channel '%1': '%2'", _channel, _message];
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_publish' Published message to channel '%1': '%2'", _channel, _message];
#endif
true true

View File

@ -67,8 +67,6 @@ private _formattedArgs = _args apply { if (_x isEqualType "") then { str _x } el
private _extensionArgs = _formattedArgs joinString ","; private _extensionArgs = _formattedArgs joinString ",";
private _result = "ArmaDragonflyClient" callExtension ["subscribe", [_extensionArgs]]; private _result = "ArmaDragonflyClient" callExtension ["subscribe", [_extensionArgs]];
#ifdef __ARMA_DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Subscribed to channel '%1' with event type '%2' and event name '%3'", _channel, _eventType, _eventName];
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_subscribe' Subscribed to channel '%1' with event type '%2' and event name '%3'", _channel, _eventType, _eventName];
#endif
true true

View File

@ -32,4 +32,3 @@ _res = _this;
dragonfly_db_test = _res; dragonfly_db_test = _res;
hint format ["%1", _res]; hint format ["%1", _res];
diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_test' Result: %1", _res];

View File

@ -18,11 +18,11 @@ namespace ArmaDragonflyClient
public class Main public class Main
{ {
private const string ADC_VERSION = "1.0.0"; private const string ADC_VERSION = "1.0.0";
public const int ADC_BUFFERSIZE = 10240; public const int ADC_BUFFERSIZE = 1024;
public static string ADC_HOST {get; private set; } = "127.0.0.1"; public static string ADC_HOST {get; private set; } = "127.0.0.1";
public static int ADC_PORT {get; private set; } = 6379; public static int ADC_PORT {get; private set; } = 6379;
public static string ADC_PASSWORD {get; private set; } = "xyz123"; public static string ADC_PASSWORD {get; private set; } = "xyz123";
public static string ADC_LOGFOLDER {get; private set; } = $"{Path.DirectorySeparatorChar}@dragonfly{Path.DirectorySeparatorChar}logs"; public static string ADC_LOGFOLDER {get; private set; } = "\\@dragonfly\\logs";
public static bool ADC_DEBUG {get; private set; } = false; public static bool ADC_DEBUG {get; private set; } = false;
public static bool ADC_INITCHECK {get; private set; } = false; public static bool ADC_INITCHECK {get; private set; } = false;
public static string STEAMID {get; private set; } = ""; public static string STEAMID {get; private set; } = "";
@ -50,12 +50,12 @@ namespace ArmaDragonflyClient
} }
if (str == "") if (str == "")
str = $"{Path.DirectorySeparatorChar}@dragonfly{Path.DirectorySeparatorChar}config.xml"; str = "@dragonfly\\config.xml";
if (File.Exists(Environment.CurrentDirectory + $"{Path.DirectorySeparatorChar}{str}")) if (File.Exists(Environment.CurrentDirectory + "\\" + str))
{ {
List<string> strList = []; List<string> strList = [];
List<string> list = [.. XElement.Load(Environment.CurrentDirectory + $"{Path.DirectorySeparatorChar}{str}").Elements().Select(eintrag => (string)eintrag)]; List<string> list = XElement.Load(Environment.CurrentDirectory + "\\" + str).Elements().Select<XElement, string>((Func<XElement, string>)(eintrag => (string)eintrag)).ToList<string>();
ADC_HOST = list[0]; ADC_HOST = list[0];
ADC_PORT = Convert.ToInt32(list[1]); ADC_PORT = Convert.ToInt32(list[1]);
ADC_PASSWORD = list[2]; ADC_PASSWORD = list[2];
@ -64,7 +64,7 @@ namespace ArmaDragonflyClient
if (bool.TryParse(list[4], out bool res2)) if (bool.TryParse(list[4], out bool res2))
ADC_DEBUG = res2; ADC_DEBUG = res2;
Log($"Config file found! Context Mode: {ADC_CONTEXTLOG}! Debug Mode: {ADC_DEBUG}! Changed Server Settings to: {ADC_HOST}:{ADC_PORT}:{ADC_PASSWORD}!", "action"); Log(string.Format("Config file found! Context Mode: {3}! Debug Mode: {4}! Changed Server Settings to: {0}:{1}:{2}!", (object)ADC_HOST, (object)ADC_PORT, (object)ADC_PASSWORD, (object)ADC_CONTEXTLOG, (object)ADC_DEBUG), "action");
} }
else else
{ {
@ -341,18 +341,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_get"; string _uniqueID = $"{_id}_get";
switch (argsCnt) if (argsCnt == 2)
{ await DragonflyDB.DragonflyGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID);
case 2: if (argsCnt == 3)
await DragonflyDB.DragonflyGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID); await DragonflyDB.DragonflyGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'));
break; if (argsCnt == 4)
case 3: await DragonflyDB.DragonflyGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'), argsArr[3].Trim('"'));
await DragonflyDB.DragonflyGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'));
break;
case 4:
await DragonflyDB.DragonflyGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'), argsArr[3].Trim('"'));
break;
}
}); });
} }
@ -396,18 +390,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_listidx"; string _uniqueID = $"{_id}_listidx";
switch (argsCnt) if (argsCnt == 3)
{ await DragonflyDB.DragonflyListIndexAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID);
case 3: if (argsCnt == 4)
await DragonflyDB.DragonflyListIndexAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID); await DragonflyDB.DragonflyListIndexAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'));
break; if (argsCnt == 5)
case 4: await DragonflyDB.DragonflyListIndexAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'), argsArr[4].Trim('"'));
await DragonflyDB.DragonflyListIndexAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'));
break;
case 5:
await DragonflyDB.DragonflyListIndexAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'), argsArr[4].Trim('"'));
break;
}
}); });
} }
@ -425,18 +413,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_listrng"; string _uniqueID = $"{_id}_listrng";
switch (argsCnt) if (argsCnt == 4)
{ await DragonflyDB.DragonflyListRangeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), argsArr[3].Trim('"'), _uniqueID);
case 4: if (argsCnt == 5)
await DragonflyDB.DragonflyListRangeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), argsArr[3].Trim('"'), _uniqueID); await DragonflyDB.DragonflyListRangeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), argsArr[3].Trim('"'), _uniqueID, argsArr[4].Trim('"'));
break; if (argsCnt == 6)
case 5: await DragonflyDB.DragonflyListRangeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), argsArr[3].Trim('"'), _uniqueID, argsArr[4].Trim('"'), argsArr[5].Trim('"'));
await DragonflyDB.DragonflyListRangeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), argsArr[3].Trim('"'), _uniqueID, argsArr[4].Trim('"'));
break;
case 6:
await DragonflyDB.DragonflyListRangeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), argsArr[3].Trim('"'), _uniqueID, argsArr[4].Trim('"'), argsArr[5].Trim('"'));
break;
}
}); });
} }
@ -460,17 +442,16 @@ namespace ArmaDragonflyClient
{ {
Task.Run(async () => Task.Run(async () =>
{ {
switch (argsCnt) if (argsCnt > 2)
{ {
case > 2: for (var i = 0; i < argsCnt; i += 2)
for (var i = 0; i < argsCnt; i += 2) {
{ await DragonflyDB.DragonflyHashSetAsync(STEAMID, argsArr[i].Trim('"'), argsArr[i + 1]);
await DragonflyDB.DragonflyHashSetAsync(STEAMID, argsArr[i].Trim('"'), argsArr[i + 1]); }
} }
break; else
default: {
await DragonflyDB.DragonflyHashSetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1]); await DragonflyDB.DragonflyHashSetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1]);
break;
} }
}); });
} }
@ -478,17 +459,16 @@ namespace ArmaDragonflyClient
private static void HandleHSetIdOperation(List<string> argsArr, int argsCnt) private static void HandleHSetIdOperation(List<string> argsArr, int argsCnt)
{ {
Task.Run(async () => { Task.Run(async () => {
switch (argsCnt) if (argsCnt > 4)
{ {
case > 4: for (var i = 1; i < argsCnt; i += 2)
for (var i = 1; i < argsCnt; i += 2) {
{ await DragonflyDB.DragonflyHashSetAsync(argsArr[0].Trim('"'), argsArr[i].Trim('"'), argsArr[i + 1]);
await DragonflyDB.DragonflyHashSetAsync(argsArr[0].Trim('"'), argsArr[i].Trim('"'), argsArr[i + 1]); }
} }
break; else
default: {
await DragonflyDB.DragonflyHashSetAsync(argsArr[0].Trim('"'), argsArr[1], argsArr[2]); await DragonflyDB.DragonflyHashSetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2]);
break;
} }
}); });
} }
@ -498,18 +478,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_hget"; string _uniqueID = $"{_id}_hget";
switch (argsCnt) if (argsCnt == 2)
{ await DragonflyDB.DragonflyHashGetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID);
case 2: if (argsCnt == 3)
await DragonflyDB.DragonflyHashGetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID); await DragonflyDB.DragonflyHashGetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'));
break; if (argsCnt == 4)
case 3: await DragonflyDB.DragonflyHashGetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'), argsArr[3].Trim('"'));
await DragonflyDB.DragonflyHashGetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'));
break;
case 4:
await DragonflyDB.DragonflyHashGetAsync(STEAMID, argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'), argsArr[3].Trim('"'));
break;
}
}); });
} }
@ -518,18 +492,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_hgetid"; string _uniqueID = $"{_id}_hgetid";
switch (argsCnt) if (argsCnt == 3)
{ await DragonflyDB.DragonflyHashGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID);
case 3: if (argsCnt == 4)
await DragonflyDB.DragonflyHashGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID); await DragonflyDB.DragonflyHashGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'));
break; if (argsCnt == 5)
case 4: await DragonflyDB.DragonflyHashGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'), argsArr[4].Trim('"'));
await DragonflyDB.DragonflyHashGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'));
break;
case 5:
await DragonflyDB.DragonflyHashGetAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'), argsArr[4].Trim('"'));
break;
}
}); });
} }
@ -538,18 +506,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_hgetall"; string _uniqueID = $"{_id}_hgetall";
switch (argsCnt) if (argsCnt == 1)
{ await DragonflyDB.DragonflyHashGetAllAsync(STEAMID, argsArr[0].Trim('"'), _uniqueID);
case 1: if (argsCnt == 2)
await DragonflyDB.DragonflyHashGetAllAsync(STEAMID, argsArr[0].Trim('"'), _uniqueID); await DragonflyDB.DragonflyHashGetAllAsync(STEAMID, argsArr[0].Trim('"'), _uniqueID, argsArr[1].Trim('"'));
break; if (argsCnt == 3)
case 2: await DragonflyDB.DragonflyHashGetAllAsync(STEAMID, argsArr[0].Trim('"'), _uniqueID, argsArr[1].Trim('"'), argsArr[2].Trim('"'));
await DragonflyDB.DragonflyHashGetAllAsync(STEAMID, argsArr[0].Trim('"'), _uniqueID, argsArr[1].Trim('"'));
break;
case 3:
await DragonflyDB.DragonflyHashGetAllAsync(STEAMID, argsArr[0].Trim('"'), _uniqueID, argsArr[1].Trim('"'), argsArr[2].Trim('"'));
break;
}
}); });
} }
@ -558,18 +520,12 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_hgetallid"; string _uniqueID = $"{_id}_hgetallid";
switch (argsCnt) if (argsCnt == 2)
{ await DragonflyDB.DragonflyHashGetAllAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID);
case 2: if (argsCnt == 3)
await DragonflyDB.DragonflyHashGetAllAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID); await DragonflyDB.DragonflyHashGetAllAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'));
break; if (argsCnt == 4)
case 3: await DragonflyDB.DragonflyHashGetAllAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'), argsArr[3].Trim('"'));
await DragonflyDB.DragonflyHashGetAllAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'));
break;
case 4:
await DragonflyDB.DragonflyHashGetAllAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), _uniqueID, argsArr[2].Trim('"'), argsArr[3].Trim('"'));
break;
}
}); });
} }
@ -638,15 +594,10 @@ namespace ArmaDragonflyClient
Task.Run(async () => Task.Run(async () =>
{ {
string _uniqueID = $"{_id}_subscribe"; string _uniqueID = $"{_id}_subscribe";
switch (argsCnt) if (argsCnt == 3)
{ await DragonflyDB.DragonflySubscribeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID);
case 3: if (argsCnt == 4)
await DragonflyDB.DragonflySubscribeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID); await DragonflyDB.DragonflySubscribeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'));
break;
case 4:
await DragonflyDB.DragonflySubscribeAsync(argsArr[0].Trim('"'), argsArr[1].Trim('"'), argsArr[2].Trim('"'), _uniqueID, argsArr[3].Trim('"'));
break;
}
}); });
} }
} }

View File

@ -52,9 +52,22 @@ namespace ArmaDragonflyClient
data = BuildArray(data); data = BuildArray(data);
Main.Log($"{data}", "debug"); Main.Log($"{data}", "debug");
string dataAsString = $"[\"{uniqueId}\",\"{function}\",{call.ToString().ToLower()},{data},\"{entity}\"]"; string dataAsString = $"[\"{uniqueId}\",\"{function}\",{call},{data},\"{entity}\"]";
Main.Log($"{dataAsString}", "debug"); Main.Log($"{dataAsString}", "debug");
Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_handler", dataAsString); Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_handler", dataAsString);
// if (entity == null)
// {
// string dataAsString = $"[\"{uniqueId}\",\"{function}\",{call},{data}]";
// Main.Log($"{dataAsString}", "debug");
// Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_handler", dataAsString);
// }
// else
// {
// string dataAsString = $"[\"{uniqueId}\",\"{function}\",{call},{data},\"{entity}\"]";
// Main.Log($"{dataAsString}", "debug");
// Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_handler", dataAsString);
// };
} }
else else
{ {
@ -64,11 +77,9 @@ namespace ArmaDragonflyClient
var chunks = SplitIntoChunks(data, bufferSize); var chunks = SplitIntoChunks(data, bufferSize);
int totalChunks = chunks.Count; int totalChunks = chunks.Count;
for (int i = 0; i < chunks.Count; i++) foreach (string chunk in chunks)
{ {
string escapedChunk = chunks[i].Replace("\"", "\"\""); string chunkAsString = $"[{uniqueId},{function},{chunks.IndexOf(chunk)},{totalChunks},\"{chunk}\",{call},\"{entity}\"]";
string callString = call ? "true" : "false";
string chunkAsString = $"[\"{uniqueId}\",\"{function}\",{i+1},{totalChunks},\"{escapedChunk}\",\"{callString}\",\"{entity}\"]";
Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_fetch", chunkAsString); Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_fetch", chunkAsString);
} }
} }
@ -94,10 +105,9 @@ namespace ArmaDragonflyClient
var chunks = SplitIntoChunks(data, bufferSize); var chunks = SplitIntoChunks(data, bufferSize);
int totalChunks = chunks.Count; int totalChunks = chunks.Count;
for (int i = 0; i < chunks.Count; i++) foreach (string chunk in chunks)
{ {
string escapedChunk = chunks[i].Replace("\"", "\"\""); string chunkAsString = $"[{uniqueId},{eventType},{eventName},{chunks.IndexOf(chunk)},{totalChunks},\"{chunk}\",\"{target}\"]";
string chunkAsString = $"[\"{uniqueId}\",\"{eventType}\",\"{eventName}\",{i+1},{totalChunks},\"{escapedChunk}\",\"{target}\"]";
Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_pubSubFetch", chunkAsString); Main.Callback("ArmaDragonflyClient", "dragonfly_db_fnc_pubSubFetch", chunkAsString);
} }
} }