diff --git a/SpigotCore_Main/src/de/steamwar/sql/DownloadSchematic.java b/SpigotCore_Main/src/de/steamwar/sql/DownloadSchematic.java index 567aad6..4f55754 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/DownloadSchematic.java +++ b/SpigotCore_Main/src/de/steamwar/sql/DownloadSchematic.java @@ -23,8 +23,6 @@ import com.google.common.io.BaseEncoding; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; -import java.sql.ResultSet; -import java.sql.SQLException; import java.time.Instant; public class DownloadSchematic { @@ -33,24 +31,16 @@ public class DownloadSchematic { private static final String BASE = "https://steamwar.de/download.php?schem="; public static String getLink(Schematic schem){ - ResultSet rs = SQL.select("SELECT * FROM SchemDownload WHERE SchemID = ?", schem.getSchemID()); + MessageDigest digest; try { - if(rs.next()) - return BASE + rs.getString("Link"); - } catch (SQLException e) { - throw new SecurityException("Could not check schematic for existance", e); - } - - MessageDigest cript; - try { - cript = MessageDigest.getInstance("SHA-1"); + digest = MessageDigest.getInstance("SHA-1"); } catch (NoSuchAlgorithmException e) { throw new SecurityException(e); } - cript.reset(); - cript.update((Instant.now().toString() + schem.getSchemOwner() + schem.getSchemID()).getBytes()); - String hash = BaseEncoding.base16().encode(cript.digest()); - SQL.update("INSERT INTO SchemDownload (SchemID, Link) VALUES (?, ?)", schem.getSchemID(), hash); + digest.reset(); + digest.update((Instant.now().toString() + schem.getSchemOwner() + schem.getSchemID()).getBytes()); + String hash = BaseEncoding.base16().encode(digest.digest()); + SQL.update("INSERT INTO SchemDownload (SchemID, Link) VALUES (?, ?) ON DUPLICATE KEY UPDATE Link = VALUES(Link)", schem.getSchemID(), hash); return BASE + hash; } }