public final class MemoryUsageSetting extends Object
| Modifier and Type | Field and Description |
|---|---|
RandomAccessStreamCache.StreamCacheCreateFunction |
streamCache
Implementation of the function to create an instance of ScratchFile using the current settings.
|
| Modifier and Type | Method and Description |
|---|---|
long |
getMaxMainMemoryBytes()
Returns maximum size of main-memory in bytes to be used.
|
long |
getMaxStorageBytes()
Returns maximum size of storage bytes to be used (main-memory in temporary files all together).
|
File |
getTempDir()
Returns directory to be used for temporary files or
null if it was not set. |
boolean |
isMainMemoryRestricted()
Returns
true if maximum main memory is restricted to a specific number of bytes. |
boolean |
isStorageRestricted()
Returns
true if maximum amount of storage is restricted to a specific number of bytes. |
MemoryUsageSetting |
setTempDir(File tempDir)
Sets directory to be used for temporary files.
|
static MemoryUsageSetting |
setupMainMemoryOnly()
Setups buffering memory usage to only use main-memory (no temporary file) which is not restricted in size.
|
static MemoryUsageSetting |
setupMainMemoryOnly(long maxMainMemoryBytes)
Setups buffering memory usage to only use main-memory with the defined maximum.
|
static MemoryUsageSetting |
setupMixed(long maxMainMemoryBytes)
Setups buffering memory usage to use a portion of main-memory and additionally temporary file(s) in case the
specified portion is exceeded.
|
static MemoryUsageSetting |
setupMixed(long maxMainMemoryBytes,
long maxStorageBytes)
Setups buffering memory usage to use a portion of main-memory and additionally temporary file(s) in case the
specified portion is exceeded.
|
static MemoryUsageSetting |
setupTempFileOnly()
Setups buffering memory usage to only use temporary file(s) (no main-memory) with not restricted size.
|
static MemoryUsageSetting |
setupTempFileOnly(long maxStorageBytes)
Setups buffering memory usage to only use temporary file(s) (no main-memory) with the specified maximum size.
|
String |
toString() |
boolean |
useMainMemory()
Returns
true if main-memory is to be used. |
boolean |
useTempFile()
Returns
true if temporary file is to be used. |
public final RandomAccessStreamCache.StreamCacheCreateFunction streamCache
public static MemoryUsageSetting setupMainMemoryOnly()
public static MemoryUsageSetting setupMainMemoryOnly(long maxMainMemoryBytes)
maxMainMemoryBytes - maximum number of main-memory to be used; -1 for no restriction;
0 will also be interpreted here as no restrictionpublic static MemoryUsageSetting setupTempFileOnly()
public static MemoryUsageSetting setupTempFileOnly(long maxStorageBytes)
maxStorageBytes - maximum size the temporary file(s) may have all together; -1 for no
restriction; 0 will also be interpreted here as no restrictionpublic static MemoryUsageSetting setupMixed(long maxMainMemoryBytes)
maxMainMemoryBytes - maximum number of main-memory to be used; if -1 this is the same as
setupMainMemoryOnly(); if 0 this is the same as setupTempFileOnly()public static MemoryUsageSetting setupMixed(long maxMainMemoryBytes, long maxStorageBytes)
maxMainMemoryBytes - maximum number of main-memory to be used; if -1 this is the same as
setupMainMemoryOnly(); if 0 this is the same as setupTempFileOnly()maxStorageBytes - maximum size the main-memory and temporary file(s) may have all together; 0
or less will be ignored; if it is less than maxMainMemoryBytes we use maxMainMemoryBytes value insteadpublic MemoryUsageSetting setTempDir(File tempDir)
tempDir - directory for temporary filespublic boolean useMainMemory()
true if main-memory is to be used.
If this returns false it is ensured useTempFile() returns true.
public boolean useTempFile()
true if temporary file is to be used.
If this returns false it is ensured useMainMemory returns true.
public boolean isMainMemoryRestricted()
true if maximum main memory is restricted to a specific number of bytes.public boolean isStorageRestricted()
true if maximum amount of storage is restricted to a specific number of bytes.public long getMaxMainMemoryBytes()
public long getMaxStorageBytes()
public File getTempDir()
null if it was not set.Copyright © 2002–2025 The Apache Software Foundation. All rights reserved.