Add language via db #194
Keine Reviewer
Label
Kein Label
Bug
Codeverbesserung
Einsteiger Freundlich
Idee
In Arbeit
Neues Feature
Prio A
Security Breach
Überprüfung notwendig
Verbesserung
Zu Beobachten
Kein Meilenstein
Niemand zuständig
2 Beteiligte
Fällig am
Kein Fälligkeitsdatum gesetzt.
Abhängigkeiten
Keine Abhängigkeiten gesetzt.
Referenz: SteamWar/SpigotCore#194
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren
Keine Beschreibung angegeben.
Branch "LanguageConfig" löschen
Das Löschen eines Branches ist permanent. Obwohl der Branch für eine kurze Zeit weiter existieren könnte, kann diese Aktion in den meisten Fällen NICHT rückgängig gemacht werden. Fortfahren?
Add language via dbzu WIP: Add language via dbWIP: Add language via dbzu Add language via db@ -335,0 +334,4 @@
String dbLocale = rs.getString("Locale");
Locale locale = null;
if (dbLocale != null) {
locale = new Locale(dbLocale);
Das funktioniert so nicht. byLanguageTag oder so ähnlich.
@ -169,3 +170,3 @@
if(player == null)
return null;
return usersByUUID.computeIfAbsent(player.getUniqueId(), uuid -> new SteamwarUser(userId++, uuid, userName, UserGroup.Member, 0, false));
return usersByUUID.computeIfAbsent(player.getUniqueId(), uuid -> new SteamwarUser(userId++, uuid, userName, UserGroup.Member, 0, false, null));
Locale.getDefault() statt null zurückliefern, ggf. falls online-User aktuelle Locale (genauso im byUUID)
Deswegen giobt es den Spezial wert 'null', damit er dann die locale des users nimmt. Das ist absicht. Deswegen auch oben wenn die dbLocale null ist wird die locale null bleiben womit einfach erstmal die locale des spielers genutzt wird. Ist primär dafür da das wir das im Livebetrieb mergen können.
@ -46,0 +45,4 @@
if (!byId.containsKey(userId))
return;
SteamwarUser user = byId.get(userId);
byId.remove(userId);
Ein Aufruf zu remove gibt das entfernte Objekt (oder null) direkt zurück, ein containsKey und get-Aufruf ist also unnötig.
@ -90,0 +99,4 @@
public Locale getLocale() {
Locale locale = this.locale;
if (locale == null) {
locale = WorldOfColorWrapper.impl.getLocale(Bukkit.getPlayer(uuid));
Das ist unnötig (Entweder in DB oder gibts gar keine Info)
s.o.
@ -90,0 +101,4 @@
if (locale == null) {
locale = WorldOfColorWrapper.impl.getLocale(Bukkit.getPlayer(uuid));
}
if (locale == null) {
Bitte stattdessen ein != null return machen.