Schematic inputstream api
Dieser Commit ist enthalten in:
Ursprung
4ec347e2d9
Commit
a6a5499d0c
@ -182,21 +182,28 @@ public class Schematic {
|
||||
return true;
|
||||
}
|
||||
|
||||
public Clipboard load() throws IOException, NoClipboardException {
|
||||
public InputStream schemData() throws IOException {
|
||||
ResultSet rs = SQL.select("SELECT SchemData FROM Schematic WHERE SchemID = ?", schemID);
|
||||
try {
|
||||
rs.next();
|
||||
Blob schemData = rs.getBlob("SchemData");
|
||||
if(schemData == null)
|
||||
throw new IOException("SchemData is null");
|
||||
InputStream is = schemData.getBinaryStream();
|
||||
return VersionedCallable.call(new VersionedCallable<>(() -> Schematic_8.getClipboard(is, schemFormat), 8),
|
||||
new VersionedCallable<>(() -> Schematic_14.getClipboard(is, schemFormat), 14));
|
||||
return schemData.getBinaryStream();
|
||||
} catch (SQLException e) {
|
||||
throw new IOException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public static Clipboard clipboardFromStream(InputStream is, boolean schemFormat) {
|
||||
return VersionedCallable.call(new VersionedCallable<>(() -> Schematic_8.getClipboard(is, schemFormat), 8),
|
||||
new VersionedCallable<>(() -> Schematic_14.getClipboard(is, schemFormat), 14));
|
||||
}
|
||||
|
||||
public Clipboard load() throws IOException, NoClipboardException {
|
||||
return clipboardFromStream(schemData(), schemFormat);
|
||||
}
|
||||
|
||||
public void loadToPlayer(Player player) throws IOException, NoClipboardException {
|
||||
ResultSet rs = SQL.select("SELECT SchemData FROM Schematic WHERE SchemID = ?", schemID);
|
||||
try {
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren