@Incubating public class MapBasedBuildCacheService extends Object implements BuildCacheService
ConcurrentMap
.Constructor and Description |
---|
MapBasedBuildCacheService(String description,
ConcurrentMap<String,byte[]> delegate) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Clean up any resources held by the cache once it's not used anymore.
|
String |
getDescription()
Returns a description for the cache.
|
boolean |
load(BuildCacheKey key,
BuildCacheEntryReader reader)
Load the cached entry corresponding to the given cache key.
|
void |
store(BuildCacheKey key,
BuildCacheEntryWriter output)
Store the cache entry with the given cache key.
|
public MapBasedBuildCacheService(String description, ConcurrentMap<String,byte[]> delegate)
public String getDescription()
BuildCacheService
getDescription
in interface BuildCacheService
public boolean load(BuildCacheKey key, BuildCacheEntryReader reader) throws BuildCacheException
BuildCacheService
reader
will be called if an entry is found in the cache.load
in interface BuildCacheService
key
- the cache key.reader
- the reader to read the data corresponding to the cache key.true
if an entry was found, false
otherwise.BuildCacheException
- if the cache fails to load a cache entry for the given keypublic void store(BuildCacheKey key, BuildCacheEntryWriter output) throws BuildCacheException
BuildCacheService
writer
will be called to actually write the data.store
in interface BuildCacheService
key
- the cache key.output
- the writer to write the data corresponding to the cache key.BuildCacheException
- if the cache fails to store a cache entry for the given keypublic void close() throws IOException
BuildCacheService
close
in interface Closeable
close
in interface AutoCloseable
close
in interface BuildCacheService
IOException
- if the cache fails to close cleanly.