From 40c2462d5bfd2ae7bfd8029e8e362f40ae03807c Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Thu, 7 Jan 2021 15:29:59 +0100 Subject: [PATCH 1/3] Add SaveFromBytes --- .../src/de/steamwar/sql/Schematic.java | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/SpigotCore_Main/src/de/steamwar/sql/Schematic.java b/SpigotCore_Main/src/de/steamwar/sql/Schematic.java index 4be00c8..736257c 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/Schematic.java +++ b/SpigotCore_Main/src/de/steamwar/sql/Schematic.java @@ -212,15 +212,25 @@ public class Schematic { } } - public void saveOldFormatFromPlayer(Player player) throws IOException, NoClipboardException { + public void saveOldFormatFromPlayer(Player player) throws NoClipboardException { saveFromPlayer(player, false); } - public void saveFromPlayer(Player player) throws IOException, NoClipboardException { + public void saveFromPlayer(Player player) throws NoClipboardException { saveFromPlayer(player, true); } - private void saveFromPlayer(Player player, boolean newFormat) throws IOException, NoClipboardException { + public void saveFromBytes(byte[] bytes, boolean newFormat) { + Blob blob = SQL.blob(); + try { + blob.setBytes(1, bytes); + updateDatabase(blob, newFormat); + } catch (SQLException throwables) { + throwables.printStackTrace(); + } + } + + private void saveFromPlayer(Player player, boolean newFormat) throws NoClipboardException { Blob blob = SQL.blob(); VersionedRunnable.call(new VersionedRunnable(() -> { try { @@ -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; } From c65746547f0668effc654cb5d106bb24543fa747 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Thu, 7 Jan 2021 17:04:51 +0100 Subject: [PATCH 2/3] Add SaveFromBytes --- SpigotCore_Main/src/de/steamwar/sql/Schematic.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/SpigotCore_Main/src/de/steamwar/sql/Schematic.java b/SpigotCore_Main/src/de/steamwar/sql/Schematic.java index 736257c..dbdee0f 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/Schematic.java +++ b/SpigotCore_Main/src/de/steamwar/sql/Schematic.java @@ -212,11 +212,11 @@ public class Schematic { } } - public void saveOldFormatFromPlayer(Player player) throws NoClipboardException { + public void saveOldFormatFromPlayer(Player player) throws IOException, NoClipboardException { saveFromPlayer(player, false); } - public void saveFromPlayer(Player player) throws NoClipboardException { + public void saveFromPlayer(Player player) throws IOException, NoClipboardException { saveFromPlayer(player, true); } @@ -225,12 +225,12 @@ public class Schematic { try { blob.setBytes(1, bytes); updateDatabase(blob, newFormat); - } catch (SQLException throwables) { - throwables.printStackTrace(); + } catch (SQLException e) { + throw new SecurityException(e); } } - private void saveFromPlayer(Player player, boolean newFormat) throws NoClipboardException { + private void saveFromPlayer(Player player, boolean newFormat) throws IOException, NoClipboardException { Blob blob = SQL.blob(); VersionedRunnable.call(new VersionedRunnable(() -> { try { From 7562a307ffc749f50327d391477ded0ce07ff290 Mon Sep 17 00:00:00 2001 From: Lixfel Date: Thu, 7 Jan 2021 18:01:13 +0100 Subject: [PATCH 3/3] Hotfix mass errors --- SpigotCore_Main/src/de/steamwar/sql/SWException.java | 1 + 1 file changed, 1 insertion(+) diff --git a/SpigotCore_Main/src/de/steamwar/sql/SWException.java b/SpigotCore_Main/src/de/steamwar/sql/SWException.java index 6098b9a..a9e72f0 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/SWException.java +++ b/SpigotCore_Main/src/de/steamwar/sql/SWException.java @@ -64,6 +64,7 @@ public class SWException { reasons.add("Unsupported key:"); reasons.add("ThrownPotion entity"); reasons.add("Couldn't load custom particle"); + reasons.add("Chunk file at ["); reasons.add("Ignoring unknown attribute"); reasons.add("Skipping player strafe phase because no player was found"); ignorereasons = Collections.unmodifiableList(reasons);