public static class JCloudsBinaryManager.JCloudsBinaryGarbageCollector extends Object implements BinaryGarbageCollector
| Modifier and Type | Field and Description |
|---|---|
protected JCloudsBinaryManager |
binaryManager |
protected Set<String> |
marked |
protected long |
startTime |
protected BinaryManagerStatus |
status |
| Constructor and Description |
|---|
JCloudsBinaryGarbageCollector(JCloudsBinaryManager binaryManager) |
| Modifier and Type | Method and Description |
|---|---|
String |
getId()
Gets a unique identifier for this garbage collector.
|
BinaryManagerStatus |
getStatus()
Gets the status of the binaries to GC and of those that won't be.
|
boolean |
isInProgress()
Checks if a GC is in progress.
|
void |
mark(String digest)
Marks a binary as being in use.
|
void |
start()
Starts the garbage collection process.
|
void |
stop(boolean delete)
Stops the garbage collection process and deletes all binaries that have not been marked (sweep).
|
protected final JCloudsBinaryManager binaryManager
protected volatile long startTime
protected BinaryManagerStatus status
public JCloudsBinaryGarbageCollector(JCloudsBinaryManager binaryManager)
public String getId()
BinaryGarbageCollectorgetId in interface BinaryGarbageCollectorpublic BinaryManagerStatus getStatus()
BinaryGarbageCollector
Available after BinaryGarbageCollector.stop(boolean).
getStatus in interface BinaryGarbageCollectorpublic boolean isInProgress()
BinaryGarbageCollector
A GC is in progress is #start has been called but not #stop.
It's only useful to call this from a separate thread from the one that calls BinaryGarbageCollector.mark(java.lang.String).
isInProgress in interface BinaryGarbageCollectortrue if a GC is in progresspublic void start()
BinaryGarbageCollector
After this, all active binaries must be fed to the BinaryGarbageCollector.mark(java.lang.String) method.
start in interface BinaryGarbageCollectorpublic void mark(String digest)
BinaryGarbageCollectormark in interface BinaryGarbageCollectordigest - the binary's digestpublic void stop(boolean delete)
BinaryGarbageCollectorstop in interface BinaryGarbageCollectordelete - true if actual deletion must be performed, false if the binaries to delete should
simply be counted in the statusCopyright © 2019 Nuxeo. All rights reserved.