Make clipboard flushable

#1286
This commit is contained in:
dordsor21 2021-09-13 13:25:11 +01:00
parent fcbbc72a19
commit 5207981fb2
No known key found for this signature in database
GPG Key ID: 1E53E88969FFCF0B
3 changed files with 13 additions and 4 deletions

View File

@ -49,9 +49,6 @@ public abstract class LinearClipboard extends SimpleClipboard {
public abstract Collection<CompoundTag> getTileEntities();
public void flush() {
}
@Override
protected void finalize() {
close();

View File

@ -323,6 +323,11 @@ public class BlockArrayClipboard implements Clipboard {
this.parent.close();
}
@Override
public void flush() {
this.parent.flush();
}
//FAWE start
/**

View File

@ -52,6 +52,7 @@ import javax.annotation.Nullable;
import java.io.Closeable;
import java.io.File;
import java.io.FileOutputStream;
import java.io.Flushable;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URI;
@ -63,7 +64,9 @@ import static com.google.common.base.Preconditions.checkNotNull;
/**
* Specifies an object that implements something suitable as a "clipboard."
*/
public interface Clipboard extends Extent, Iterable<BlockVector3>, Closeable {
//FAWE start - Iterable, closeable and flushable
public interface Clipboard extends Extent, Iterable<BlockVector3>, Closeable, Flushable {
//FAWE end
//FAWE start
static Clipboard create(Region region) {
@ -187,6 +190,10 @@ public interface Clipboard extends Extent, Iterable<BlockVector3>, Closeable {
default void close() {
}
@Override
default void flush() {
}
/**
* Forwards to {@link #paste(World, BlockVector3, boolean, boolean, Transform)}.
*/