public class WindowCacheConfig extends Object
Modifier and Type | Field and Description |
---|---|
static int |
KB
1024 (number of bytes in one kibibyte/kilobyte)
|
static int |
MB
1024
KB (number of bytes in one mebibyte/megabyte) |
Constructor and Description |
---|
WindowCacheConfig()
Create a default configuration.
|
Modifier and Type | Method and Description |
---|---|
WindowCacheConfig |
fromConfig(Config rc)
Update properties by setting fields from the configuration.
|
int |
getDeltaBaseCacheLimit() |
long |
getPackedGitLimit() |
int |
getPackedGitOpenFiles() |
int |
getPackedGitWindowSize() |
int |
getStreamFileThreshold() |
void |
install()
Install this configuration as the live settings.
|
boolean |
isPackedGitMMAP() |
void |
setDeltaBaseCacheLimit(int newLimit) |
void |
setPackedGitLimit(long newLimit) |
void |
setPackedGitMMAP(boolean usemmap) |
void |
setPackedGitOpenFiles(int fdLimit) |
void |
setPackedGitWindowSize(int newSize) |
void |
setStreamFileThreshold(int newLimit) |
public static final int KB
public static final int MB
KB
(number of bytes in one mebibyte/megabyte)public int getPackedGitOpenFiles()
public void setPackedGitOpenFiles(int fdLimit)
fdLimit
- maximum number of streams to open at a time. Open packs count
against the process limitspublic long getPackedGitLimit()
public void setPackedGitLimit(long newLimit)
newLimit
- maximum number bytes of heap memory to dedicate to caching
pack file data.public int getPackedGitWindowSize()
public void setPackedGitWindowSize(int newSize)
newSize
- size in bytes of a single window read in from the pack file.public boolean isPackedGitMMAP()
public void setPackedGitMMAP(boolean usemmap)
usemmap
- true enables use of Java NIO virtual memory mapping for
windows; false reads entire window into a byte[] with standard
read calls.public int getDeltaBaseCacheLimit()
public void setDeltaBaseCacheLimit(int newLimit)
newLimit
- maximum number of bytes to cache in delta base cache for
inflated, recently accessed objects, without delta chains.public int getStreamFileThreshold()
public void setStreamFileThreshold(int newLimit)
newLimit
- new byte limit for objects that must be streamed. Objects
smaller than this size can be obtained as a contiguous byte
array, while objects bigger than this size require using an
ObjectStream
.public WindowCacheConfig fromConfig(Config rc)
If a property is not defined in the configuration, then it is left unmodified.
rc
- configuration to read properties from.this
.public void install()
The new configuration is applied immediately. If the new limits are smaller than what what is currently cached, older entries will be purged as soon as possible to allow the cache to meet the new limit.
Copyright © 2017 Eclipse JGit Project. All rights reserved.