12
0

CMD #141

Zusammengeführt
YoyoNow hat 29 Commits von CMD nach master 2021-12-12 15:58:20 +01:00 zusammengeführt
Besitzer
Keine Beschreibung angegeben.
YoyoNow hat 24 Commits 2021-12-10 16:31:48 +01:00 hinzugefügt
Add testing to SpigotCore_Main
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
13b6dcd74b
Add CommandRegistering
Add initial implementation for CommandPart
Update steamwarci.yml
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
fb23404f20
Add CommandPartTest
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
58221d50c2
Add some more Tests
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
93156a0976
Add some more Tests
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
86ef8e2773
Add CommandPart.checkGuard
Fix CommandPart.init
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
2bc15adfda
Fix CommandPart.generateTabComplete for varArg Parameter
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
7d94d8dd6c
Fix CommandPart.generateTabComplete for optional arguments
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
b5f9284bb5
Update SWCommand.OptionalValue
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
2bac163e57
Update SWCommandUtils SteamwarUser mapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
cd90cba7d5
Update SWCommandUtils SteamwarUser mapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
779199f058
Update SWCommandUtils SteamwarUser mapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
4366a18496
Update SWCommandUtils SteamwarUser mapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
f964b4541c
Update SWCommandUtils SteamwarUser mapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
17fdb34473
Update SWCommandUtils SteamwarUser mapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
cd8d2a8b42
Add BauweltMember TypeMapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
5f7f7673f0
Fix SubCommand
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
563801b0a1
Fix SubCommand
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
2f331e169a
Fix SubCommand
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
86ce398224
Fix SWCommandUtils.generateCommandPart
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
64c8d910c1
Fix SWCommandUtils.generateCommandPart
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
006754990c
Fix SWCommandUtils.generateCommandPart
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
46beaddbd7
Fix CommandPart.generateArgumentArray for vararg
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
7e96e4c2d5
YoyoNow hat 1 Commit 2021-12-10 18:14:14 +01:00 hinzugefügt
Fix SWCommandUtils.createEnumMapper
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
afa80082b3
YoyoNow hat 1 Commit 2021-12-11 12:56:59 +01:00 hinzugefügt
Merge branch 'master' into CMD
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
76d31ac0e2
Lixfel hat 2021-12-11 12:57:05 +01:00 Änderungen angefragt
Lixfel hat einen Kommentar hinterlassen
Besitzer

CommandSystem-Stuff kann ich nicht beurteilen/reviewen, über den Rest habe ich aber eine deutliche Meinung! :)

CommandSystem-Stuff kann ich nicht beurteilen/reviewen, über den Rest habe ich aber eine deutliche Meinung! :)
@ -36,3 +38,4 @@
private static final Map<UUID, SteamwarUser> byUUID = new HashMap<>();
private static final Map<String, SteamwarUser> byName = new HashMap<>();
private static final Map<Integer, SteamwarUser> byId = new HashMap<>();
private static final Map<String, List<SteamwarUser>> byPrefix = new HashMap<>();
Besitzer

Wie häufig wird byPrefix ausgeführt? Je nachdem (wenn das nur selten (auf ausdrückliche Useraktion/Befehl) hin passiert, sollten wir das nicht cachen.

Zudem: Wird das auch schon mit 1 Buchstaben ausgeführt? Das wäre extrem ungeil, weil wir dann mehr oder weniger auf einmal 1/26 von derzeit 8000+ Usern laden (in etwa, oder wenn . oder % eingegeben werden, alle). Und das halten wir dann im RAM.

Wie häufig wird byPrefix ausgeführt? Je nachdem (wenn das nur selten (auf ausdrückliche Useraktion/Befehl) hin passiert, sollten wir das nicht cachen. Zudem: Wird das auch schon mit 1 Buchstaben ausgeführt? Das wäre extrem ungeil, weil wir dann mehr oder weniger auf einmal 1/26 von derzeit 8000+ Usern laden (in etwa, oder wenn . oder % eingegeben werden, alle). Und das halten wir dann im RAM.
Autor
Besitzer

Stimme ich zu und siehe unten.

Stimme ich zu und siehe unten.
YoyoNow markierte diese Unterhaltung als gelöst
@ -93,6 +97,27 @@ public class SteamwarUser {
return bedrock;
}
public static List<SteamwarUser> getByPrefix(String userName){
Besitzer

Bitte hier unbedingt ausgibige Filterung (., %, zu kurze userNames) einbauen, damit unsere DB nicht so extensiv gequeriet wird.

Falls du diese Funktion für Tab-Completion einbaust: Generell bei Tab-Completion nur die User anbieten, die derzeit auf dem selben Server sind. Der Rest wird deutlich seltener gebraucht und würde nur die Datenbank (und Userverbindung) zuspammen. Wir würden auch dadurch einem User verraten, welche User alles schon mal bei uns waren (und welche nicht).

Bitte hier unbedingt ausgibige Filterung (., %, zu kurze userNames) einbauen, damit unsere DB nicht so extensiv gequeriet wird. Falls du diese Funktion für Tab-Completion einbaust: Generell bei Tab-Completion nur die User anbieten, die derzeit auf dem selben Server sind. Der Rest wird deutlich seltener gebraucht und würde nur die Datenbank (und Userverbindung) zuspammen. Wir würden auch dadurch einem User verraten, welche User alles schon mal bei uns waren (und welche nicht).
Autor
Besitzer

Wie unten schon gesagt, würde ich ganz gerne alle User die gerade auf dem Bungee sind tabCompleten und nicht nur die die auf dem Server selber sind, dafür gibt es Player.

Wie unten schon gesagt, würde ich ganz gerne alle User die gerade auf dem Bungee sind tabCompleten und nicht nur die die auf dem Server selber sind, dafür gibt es Player.
YoyoNow markierte diese Unterhaltung als gelöst
@ -96,0 +101,4 @@
if (userName.isEmpty()) {
return new ArrayList<>();
}
List<SteamwarUser> users = byPrefix.get(userName.toLowerCase().substring(0, 1));
Besitzer

Warum nur nach dem ersten Buchstaben suchen?

Warum nur nach dem ersten Buchstaben suchen?
YoyoNow markierte diese Unterhaltung als gelöst
@ -96,0 +113,4 @@
}
return steamwarUsers;
}, userName.toLowerCase() + "%");
byPrefix.put(userName.toLowerCase().substring(0, 1), users);
Besitzer

Wenn das nur der erste Buchstabe ist, ist das dann bei längeren anderen Suchqueries nicht falsch, da zunächst nur mit längerem Suchquery geladen wird?

Wenn das nur der erste Buchstabe ist, ist das dann bei längeren anderen Suchqueries nicht falsch, da zunächst nur mit längerem Suchquery geladen wird?
Autor
Besitzer

Ich mache danach noch ein sort darauf selber, deswegen immer nur den ersten. Ich würde gerne nur die die gerade Online sind nehmen, aber wie komme ich an ALLE die auf dem Bungee sind vom Server aus?

Ich mache danach noch ein sort darauf selber, deswegen immer nur den ersten. Ich würde gerne nur die die gerade Online sind nehmen, aber wie komme ich an ALLE die auf dem Bungee sind vom Server aus?
Besitzer

Gar nicht, deshalb Limitation auf die, die mit auf dem selben Spigotserver sind (du dürftest auf dem Spigot ja auch nur Befehle haben, welche sich nur auf Leute auf dem selben Spigot beziehen - daher würde das meiner Meinung nach ausreichen)

Gar nicht, deshalb Limitation auf die, die mit auf dem selben Spigotserver sind (du dürftest auf dem Spigot ja auch nur Befehle haben, welche sich nur auf Leute auf dem selben Spigot beziehen - daher würde das meiner Meinung nach ausreichen)
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +1,122 @@
/*
Besitzer

Die testsrc/.gitkeep kann doch mittlerweile eigentlich weg, oder?

Die testsrc/.gitkeep kann doch mittlerweile eigentlich weg, oder?
Autor
Besitzer

Da hast du recht.

Da hast du recht.
YoyoNow markierte diese Unterhaltung als gelöst
@ -0,0 +19,4 @@
package de.steamwar.command;
public class ExecutionIdentifier extends RuntimeException {
Besitzer

Brauchst du den wirklich, oder hast du andernfalls silent-exceptions die irgendwo gecatcht und verworfen werden? Das wäre dann nämlich eher ein Zeichen davon, dass die Codearchitektur bescheiden ist. Eigentlich sollte man eine korrekte Ausführung daran erkennen, dass der Code ordnungsgemäß terminiert und Werte, welche sich ändern sollten, auf den korrekten Wert geändert wurden.

Brauchst du den wirklich, oder hast du andernfalls silent-exceptions die irgendwo gecatcht und verworfen werden? Das wäre dann nämlich eher ein Zeichen davon, dass die Codearchitektur bescheiden ist. Eigentlich sollte man eine korrekte Ausführung daran erkennen, dass der Code ordnungsgemäß terminiert und Werte, welche sich ändern sollten, auf den korrekten Wert geändert wurden.
Autor
Besitzer

Naja ich will im test wissen, ob die methode wirklich ausgeführt wird, und das geht am besten indem ich wenn es ausgeführt wird eine Exception werfe und diese überprüfe.

Naja ich will im test wissen, ob die methode wirklich ausgeführt wird, und das geht am besten indem ich wenn es ausgeführt wird eine Exception werfe und diese überprüfe.
Besitzer

Dann weißt du aber nie, ob der Code, welcher danach noch ausgeführt wird, nicht den Wert wieder zurücksetzen würde/fehler werfen würde.

Dann weißt du aber nie, ob der Code, welcher danach noch ausgeführt wird, nicht den Wert wieder zurücksetzen würde/fehler werfen würde.
Autor
Besitzer

Das brauche ich mit dem Test nicht prüfen, ich will dort erstmal nur prüfen ob an sich die methode ausgeführt wird, andere Tests werden noch folgen. Aber soweit tut das Framework

Das brauche ich mit dem Test nicht prüfen, ich will dort erstmal nur prüfen ob an sich die methode ausgeführt wird, andere Tests werden noch folgen. Aber soweit tut das Framework
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 2 Commits 2021-12-11 13:43:40 +01:00 hinzugefügt
YoyoNow hat ein Review von Lixfel 2021-12-11 13:44:23 +01:00 angefragt
Lixfel hat die Änderungen 2021-12-11 13:58:51 +01:00 genehmigt
Lixfel hat einen Kommentar hinterlassen
Besitzer

Bis auf die Commandsachen (die ich nicht sinnvoll überprüfen kann) ok.

Bis auf die Commandsachen (die ich nicht sinnvoll überprüfen kann) ok.
@ -26,6 +26,7 @@ import org.bukkit.entity.Player;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
import java.util.stream.Collectors;
Besitzer

Du und deine Import-Sauberkeit ;).

Du und deine Import-Sauberkeit ;).
YoyoNow markierte diese Unterhaltung als gelöst
YoyoNow hat 1 Commit 2021-12-11 14:00:00 +01:00 hinzugefügt
Fix SWCommandUtils SteamwarUser
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
1fe04962a5
YoyoNow hat Commit 9092bef1e3 in master 2021-12-12 15:58:20 +01:00 gemerged
YoyoNow löschte die Branch CMD 2021-12-12 15:58:35 +01:00
Anmelden, um an der Diskussion teilzunehmen.
Keine Beschreibung angegeben.