final private static int SIZE = 1<<18;
+ private boolean deleteOnClose = false;
+ private File file;
+
public StreamingTransferableGraphFileReader(File file) throws Exception {
+ this(file,false);
+ }
+
+ public StreamingTransferableGraphFileReader(File file, boolean deleteOnClose) throws Exception {
super(file, SIZE);
if(init) {
init=false;
@SuppressWarnings("resource")
StreamingTransferableGraphFileReader r = new StreamingTransferableGraphFileReader(file, 0);
for(int i=0;i<40000;i++) r.readTG();
+ r.close();
}
+ this.file = file;
+ this.deleteOnClose = deleteOnClose;
}
public StreamingTransferableGraphFileReader(InputStream stream) throws Exception {
@SuppressWarnings("resource")
StreamingTransferableGraphFileReader r = new StreamingTransferableGraphFileReader(stream, 0);
for(int i=0;i<40000;i++) r.readTG();
+ r.close();
}
}
@SuppressWarnings("resource")
StreamingTransferableGraphFileReader r = new StreamingTransferableGraphFileReader(channel, 0);
for(int i=0;i<40000;i++) r.readTG();
+ r.close();
}
}
public StreamingTransferableGraphFileReader(File file, int size) throws IOException {
super(file, size);
}
+
+ @Override
+ public void close() throws IOException {
+ super.close();
+ if (deleteOnClose && file != null && file.exists()) {
+ file.delete();
+ }
+ }
class FileTransferableGraphSource implements TransferableGraphSource {