X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-clustering-commons%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fio%2FFileBackedOutputStream.java;h=38249dabd4bee4bb33f356cdfc1b42cb326a6a77;hb=43f18b836755a1167e831687a674d26611f9d3b2;hp=452611b5005acc2f8708a037d62a4b88d744345b;hpb=d796a8de8b208ca24bb57aebfc689f8be8bc2c7b;p=controller.git diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/io/FileBackedOutputStream.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/io/FileBackedOutputStream.java index 452611b500..38249dabd4 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/io/FileBackedOutputStream.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/io/FileBackedOutputStream.java @@ -16,11 +16,10 @@ import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.nio.file.Files; import java.util.Iterator; import java.util.Set; import javax.annotation.Nonnull; @@ -100,7 +99,7 @@ public class FileBackedOutputStream extends OutputStream { public InputStream openStream() throws IOException { synchronized (FileBackedOutputStream.this) { if (file != null) { - return new FileInputStream(file); + return Files.newInputStream(file.toPath()); } else { return new ByteArrayInputStream(memory.getBuffer(), 0, memory.getCount()); } @@ -201,15 +200,16 @@ public class FileBackedOutputStream extends OutputStream { } if (file == null && memory.getCount() + len > fileThreshold) { - File temp = File.createTempFile("FileBackedOutputStream", null, new File(fileDirectory)); + File temp = File.createTempFile("FileBackedOutputStream", null, + fileDirectory == null ? null : new File(fileDirectory)); temp.deleteOnExit(); LOG.debug("Byte count {} has exceeded threshold {} - switching to file: {}", memory.getCount() + len, fileThreshold, temp); - FileOutputStream transfer = null; + OutputStream transfer = null; try { - transfer = new FileOutputStream(temp); + transfer = Files.newOutputStream(temp.toPath()); transfer.write(memory.getBuffer(), 0, memory.getCount()); transfer.flush();