SteamWar/SpigotCore
Archiviert
13
0

Some Fixes for SchematicSelector #140

Zusammengeführt
Lixfel hat 6 Commits von fix_rank nach master 2021-12-27 16:29:43 +01:00 zusammengeführt
Nur Änderungen aus Commit 04de43ed4d werden angezeigt - Alle Commits anzeigen

Datei anzeigen

@ -34,6 +34,7 @@ import java.sql.SQLException;
import java.sql.Timestamp;
import java.time.Instant;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.Predicate;
import java.util.zip.GZIPInputStream;
@ -488,8 +489,12 @@ public class SchematicNode {
StringBuilder builder = new StringBuilder(getName());
SchematicNode currentNode = this;
if (currentNode.isDir()) builder.append("/");
Veraltet
Review

Wie häufig wird das ausgeführt? Falls häufig, dürfte das wsl. ungeil sein, weil da glaube immer eine DB-Abfrage dahinterhängt

Wie häufig wird das ausgeführt? Falls häufig, dürfte das wsl. ungeil sein, weil da glaube immer eine DB-Abfrage dahinterhängt
Veraltet
Review

Sollte jetzt nicht mehr so viele SQL-Statements aufrufen, ist die Methode, welche denn Pfad zu einer Schematic erstellt, da würde das currentNode.getMembers() für jede ParentNode ausgeführt werden.

Sollte jetzt nicht mehr so viele SQL-Statements aufrufen, ist die Methode, welche denn Pfad zu einer Schematic erstellt, da würde das currentNode.getMembers() für jede ParentNode ausgeführt werden.
while (currentNode.getParentNode() != null && !currentNode.getMembers().stream().anyMatch(member -> member.getMember() == user.getId())) {
final Set<NodeMember> nodeMembers = NodeMember.getSchematics(user.getId());
AtomicInteger i = new AtomicInteger();
i.set(currentNode.getId());
while (currentNode.getParentNode() != null && nodeMembers.stream().noneMatch(nodeMember -> nodeMember.getNode() == i.get())) {
currentNode = currentNode.getParentNode();
i.set(currentNode.getId());
builder.insert(0, split)
.insert(0, currentNode.getName());
}