Deprecate TemporaryBuffer.LocalFile without parent directory
Encourage callers to explicitly name a directory to hold any overflow data. Call sites have more information about what is going into the buffer and how it should be protected at the filesystem level than just throwing content to the system wide temporary directory. Callers that still really don't care (or need to care) can pass null for the File argument to have the system directory used. Change-Id: I89009bbee49d3850d42cd82c2c462e51043acda0
This commit is contained in:
parent
4206ea43b8
commit
61b632ee5a
|
@ -216,7 +216,7 @@ void read() throws IOException, InterruptedException {
|
|||
buf.destroy();
|
||||
}
|
||||
commitId = line.substring("commit ".length());
|
||||
buf = new TemporaryBuffer.LocalFile();
|
||||
buf = new TemporaryBuffer.LocalFile(null);
|
||||
} else if (buf != null) {
|
||||
buf.write(line.getBytes("ISO-8859-1"));
|
||||
buf.write('\n');
|
||||
|
|
|
@ -59,7 +59,7 @@
|
|||
public class TemporaryBufferTest {
|
||||
@Test
|
||||
public void testEmpty() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
try {
|
||||
b.close();
|
||||
assertEquals(0, b.length());
|
||||
|
@ -73,7 +73,7 @@ public void testEmpty() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testOneByte() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte test = (byte) new TestRng(getName()).nextInt();
|
||||
try {
|
||||
b.write(test);
|
||||
|
@ -100,7 +100,7 @@ public void testOneByte() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testOneBlock_BulkWrite() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.Block.SZ);
|
||||
try {
|
||||
|
@ -131,7 +131,7 @@ public void testOneBlock_BulkWrite() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testOneBlockAndHalf_BulkWrite() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.Block.SZ * 3 / 2);
|
||||
try {
|
||||
|
@ -162,7 +162,7 @@ public void testOneBlockAndHalf_BulkWrite() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testOneBlockAndHalf_SingleWrite() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.Block.SZ * 3 / 2);
|
||||
try {
|
||||
|
@ -191,7 +191,7 @@ public void testOneBlockAndHalf_SingleWrite() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testOneBlockAndHalf_Copy() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.Block.SZ * 3 / 2);
|
||||
try {
|
||||
|
@ -221,7 +221,7 @@ public void testOneBlockAndHalf_Copy() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testLarge_SingleWrite() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.DEFAULT_IN_CORE_LIMIT * 3);
|
||||
try {
|
||||
|
@ -263,7 +263,7 @@ public void testInCoreInputStream() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testInCoreLimit_SwitchOnAppendByte() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.DEFAULT_IN_CORE_LIMIT + 1);
|
||||
try {
|
||||
|
@ -292,7 +292,7 @@ public void testInCoreLimit_SwitchOnAppendByte() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testInCoreLimit_SwitchBeforeAppendByte() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.DEFAULT_IN_CORE_LIMIT * 3);
|
||||
try {
|
||||
|
@ -321,7 +321,7 @@ public void testInCoreLimit_SwitchBeforeAppendByte() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testInCoreLimit_SwitchOnCopy() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final byte[] test = new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.DEFAULT_IN_CORE_LIMIT * 2);
|
||||
try {
|
||||
|
@ -354,7 +354,7 @@ public void testInCoreLimit_SwitchOnCopy() throws IOException {
|
|||
@Test
|
||||
public void testDestroyWhileOpen() throws IOException {
|
||||
@SuppressWarnings("resource" /* java 7 */)
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
try {
|
||||
b.write(new TestRng(getName())
|
||||
.nextBytes(TemporaryBuffer.DEFAULT_IN_CORE_LIMIT * 2));
|
||||
|
@ -365,7 +365,7 @@ public void testDestroyWhileOpen() throws IOException {
|
|||
|
||||
@Test
|
||||
public void testRandomWrites() throws IOException {
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile();
|
||||
final TemporaryBuffer b = new TemporaryBuffer.LocalFile(null);
|
||||
final TestRng rng = new TestRng(getName());
|
||||
final int max = TemporaryBuffer.DEFAULT_IN_CORE_LIMIT * 2;
|
||||
final byte[] expect = new byte[max];
|
||||
|
|
|
@ -361,7 +361,12 @@ public static class LocalFile extends TemporaryBuffer {
|
|||
*/
|
||||
private File onDiskFile;
|
||||
|
||||
/** Create a new temporary buffer. */
|
||||
/**
|
||||
* Create a new temporary buffer.
|
||||
*
|
||||
* @deprecated Use the {@code File} overload to supply a directory.
|
||||
*/
|
||||
@Deprecated
|
||||
public LocalFile() {
|
||||
this(null, DEFAULT_IN_CORE_LIMIT);
|
||||
}
|
||||
|
@ -372,7 +377,9 @@ public LocalFile() {
|
|||
* @param inCoreLimit
|
||||
* maximum number of bytes to store in memory. Storage beyond
|
||||
* this limit will use the local file.
|
||||
* @deprecated Use the {@code File,int} overload to supply a directory.
|
||||
*/
|
||||
@Deprecated
|
||||
public LocalFile(final int inCoreLimit) {
|
||||
this(null, inCoreLimit);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue