diff --git a/SpigotCore_Main/src/de/steamwar/sql/Schematic.java b/SpigotCore_Main/src/de/steamwar/sql/Schematic.java index 4be00c8..dbdee0f 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/Schematic.java +++ b/SpigotCore_Main/src/de/steamwar/sql/Schematic.java @@ -220,6 +220,16 @@ public class Schematic { saveFromPlayer(player, true); } + public void saveFromBytes(byte[] bytes, boolean newFormat) { + Blob blob = SQL.blob(); + try { + blob.setBytes(1, bytes); + updateDatabase(blob, newFormat); + } catch (SQLException e) { + throw new SecurityException(e); + } + } + private void saveFromPlayer(Player player, boolean newFormat) throws IOException, NoClipboardException { Blob blob = SQL.blob(); VersionedRunnable.call(new VersionedRunnable(() -> { @@ -228,18 +238,18 @@ public class Schematic { } catch (SQLException e) { throw new RuntimeException(e.getMessage(), e); } - updateDatabase(blob, player, false); + updateDatabase(blob, false); }, 8), new VersionedRunnable(() -> { try { blob.setBytes(1, Schematic_14.getPlayerClipboard(player, newFormat)); } catch (SQLException exception) { throw new RuntimeException(exception.getMessage(), exception); } - updateDatabase(blob, player, newFormat); + updateDatabase(blob, newFormat); }, 14)); } - private void updateDatabase(Blob blob, Player player, boolean newFormat) { + private void updateDatabase(Blob blob, boolean newFormat) { SQL.update("UPDATE Schematic SET SchemData = ?, SchemFormat = ? WHERE SchemID = ?", blob, newFormat, schemID); schemFormat = newFormat; }