Schematic Nodes #90
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
Abhängigkeiten
Keine Abhängigkeiten gesetzt.
Referenz: SteamWar/SpigotCore#90
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren
Keine Beschreibung angegeben.
Branch "schematic-node" 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?
@ -32,16 +32,14 @@ import java.util.logging.Level;
public class CheckedSchematic {
CheckedSchematic kann ganz aus dem SpigotCore entfernt werden, ich glaube, kein System (im SpigotCore) braucht den noch.
Die SQL klasse ist aber nur Protected
@ -34,3 +34,2 @@
private final String schemName;
private final int schemOwner;
private final int node;
Das rückwirkend für alle Schems (teils gelöschte) zu ändern? Halleluja! Viel Spaß.
@ -33,1 +33,3 @@
public static String getLink(Schematic schem){
public static String getLink(SchematicNode schem){
if(schem.isDir())
throw new SecurityException("Can not Download Directorys");
Warum nicht? Wäre doch auch mal interessant. (Muss nicht im Rahmen dieses PRs umgesetzt werden)
@ -35,35 +35,18 @@ import java.util.UUID;
public class Schematic {
Lass doch diese Klasse auch noch die Kernklasse sein. Es gibt keinen Grund, warum die Klasse jetzt plötzlich SchematicNode heißen muss. Provoziert viel weniger unnötige Änderungen, wenn das einfach gleichbleibt.
@ -16,3 +1,1 @@
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
/*
Unnötigste Änderung EU-West.
0Intellij Auto-Copyright, hatte die klasse gelöcht und neu erstellt :0
@ -26,3 +25,4 @@
import java.util.UUID;
import java.util.stream.Collectors;
public class SchematicMember {
Da das einfach (auch in anderen Systemen) nur unnötig viele Änderungen provoziert, obwohl sich häufig eigentlich nichts ändert: Behalte diesen alten Namen (und ggf. je nachdem, wie weit möglich) die alte API bei. Also NodeMember als SchematicMember lassen.
????
@ -0,0 +33,4 @@
public class SchematicNode {
private static final String DIR_TYPE = "directory";
Wenns ein Verzeichnis ist: NULL
WIP: Schematic Nodeszu Schematic NodesOk, da der Branch schon etwas auf der Halde liegt, gibt es die SQL-Befehle zum Konvertieren auf das neue System?
Hat dieses System Probleme, und wenn ja welche? Welche Lösungen sind "hacky" oder nichttrivial? Wie weit wurde der Branch getestet?
Damit das mal voran kommt :)
Getestet auf die "alte" zugriffs Methode hatte ich getestet, sollte soweit im SchematicSystem/Fightsystem tun.
Das SQL-Statement zum konvertieren hatte ich mal hier drunter geschrieben:
Ansonsten sollte es eig. tun.
Membertransfer?
sollte nach der Node gamcht werden
Schematic Nodeszu WIP: Schematic NodesTodo:
@ -0,0 +25,4 @@
import java.util.UUID;
public class CheckedNode {
Es bleibt bei CheckedSchematic - nur zukünftig mit zusätzlichem NodeID-Feld
@ -0,0 +59,4 @@
SchematicNode sNode = SchematicNode.getSchematicNode(node);
String nodeName = sNode.getName();
int nodeOwner = sNode.getOwner();
SQL.update("INSERT INTO CheckedSchematic" +
Statement-System
@ -0,0 +96,4 @@
}
public void remove() {
SQL.update("DELETE FROM CheckedSchematic WHERE NodeId", node);
.
@ -0,0 +24,4 @@
import java.util.HashSet;
import java.util.Set;
public class NodeMember {
Statement-System
@ -0,0 +412,4 @@
}
private void updateDB() {
SQL.update("UPDATE SchematicNode SET NodeName = ?, NodeOwner = ?, ParentNode = ?, NodeItem = ?, NodeType = ?, NodeRank = ? WHERE NodeId = ?",
Statement-System
@ -0,0 +422,4 @@
if (isDir()) {
getSchematicNodeInNode(getId()).forEach(SchematicNode::delete);
}
SQL.update("DELETE FROM SchematicNode WHERE NodeId = ?", id);
.
@ -0,0 +426,4 @@
}
public InputStream schemData() throws IOException {
ResultSet rs = SQL.select("SELECT NodeData FROM SchematicNode WHERE NodeId = ?", id);
.
@ -0,0 +469,4 @@
}
private void updateDatabase(InputStream blob, boolean newFormat) {
SQL.update("UPDATE SchematicNode SET NodeData = ?, NodeFormat = ? WHERE NodeId = ?", blob, newFormat, id);
.
WIP: Schematic Nodeszu Schematic NodesWarten auf Ende der Datenbankänderungen.