public class ReprioritizationTracker extends java.lang.Object implements IReprioritizationTracker
| Modifier and Type | Class and Description |
|---|---|
protected static class |
ReprioritizationTracker.PreloadedValues
A set of preloaded values
|
protected static class |
ReprioritizationTracker.PreloadKey
Connector class name, bin name pair
|
protected static class |
ReprioritizationTracker.PreloadRequest
A preload request
|
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
_rcsid |
protected IBinManager |
binManager |
protected ILockManager |
lockManager
Lock manager
|
protected java.util.Map<ReprioritizationTracker.PreloadKey,ReprioritizationTracker.PreloadedValues> |
preloadedValues
Preload values
|
protected java.util.Map<ReprioritizationTracker.PreloadKey,ReprioritizationTracker.PreloadRequest> |
preloadRequests
Preload requests
|
protected static java.lang.String |
trackerMinimumDepthResource |
protected static java.lang.String |
trackerProcessIDResource |
protected static java.lang.String |
trackerReproIDResource |
protected static java.lang.String |
trackerWriteLock |
| Constructor and Description |
|---|
ReprioritizationTracker(IThreadContext threadContext)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addPreloadRequest(java.lang.String connectorClass,
java.lang.String binName,
double weightedMinimumDepth)
Note preload amounts.
|
void |
assessMinimumDepth(java.lang.Double[] binNamesSet)
Assess the current minimum depth.
|
void |
clearPreloadedValues()
Clear remaining preloaded values.
|
void |
clearPreloadRequests()
Clear any preload requests.
|
void |
doneReprioritization(java.lang.String reproID)
Complete a reprioritization activity.
|
double |
getIncrementBinValue(java.lang.String connectorClass,
java.lang.String binName,
double weightedMinimumDepth)
Get a bin value.
|
double |
getMinimumDepth()
Retrieve current minimum depth.
|
java.lang.String |
isSpecifiedProcessReprioritizing(java.lang.String processID)
Check if the specified processID is the one performing reprioritization.
|
void |
preloadBinValues()
Preload bin values.
|
protected double |
readMinimumDepth()
Read minimum depth.
|
protected java.lang.String |
readProcessID()
Read process ID.
|
protected java.lang.String |
readReproID()
Read repriotization ID.
|
void |
startReprioritization(java.lang.String processID,
java.lang.String reproID)
Start a reprioritization activity.
|
protected void |
writeMinimumDepth(double depth)
Write minimum depth.
|
protected void |
writeProcessID(java.lang.String processID)
Write process ID.
|
protected void |
writeReproID(java.lang.String reproID)
Write repro ID.
|
public static final java.lang.String _rcsid
protected static final java.lang.String trackerWriteLock
protected static final java.lang.String trackerProcessIDResource
protected static final java.lang.String trackerReproIDResource
protected static final java.lang.String trackerMinimumDepthResource
protected final ILockManager lockManager
protected final IBinManager binManager
protected final java.util.Map<ReprioritizationTracker.PreloadKey,ReprioritizationTracker.PreloadRequest> preloadRequests
protected final java.util.Map<ReprioritizationTracker.PreloadKey,ReprioritizationTracker.PreloadedValues> preloadedValues
public ReprioritizationTracker(IThreadContext threadContext) throws ManifoldCFException
ManifoldCFExceptionpublic void startReprioritization(java.lang.String processID,
java.lang.String reproID)
throws ManifoldCFException
startReprioritization in interface IReprioritizationTrackerprocessID - is the process ID of the process performing/waiting for the prioritization
to complete.reproID - is the reprocessing thread IDManifoldCFExceptionpublic void doneReprioritization(java.lang.String reproID)
throws ManifoldCFException
doneReprioritization in interface IReprioritizationTrackerreproID - is the process ID of the process completing the prioritization.ManifoldCFExceptionpublic java.lang.String isSpecifiedProcessReprioritizing(java.lang.String processID)
throws ManifoldCFException
isSpecifiedProcessReprioritizing in interface IReprioritizationTrackerprocessID - is the process ID to check.ManifoldCFExceptionpublic void assessMinimumDepth(java.lang.Double[] binNamesSet)
throws ManifoldCFException
assessMinimumDepth in interface IReprioritizationTrackerbinNamesSet - is the current set of priorities we see on the queuing operation.ManifoldCFExceptionpublic double getMinimumDepth()
throws ManifoldCFException
getMinimumDepth in interface IReprioritizationTrackerManifoldCFExceptionpublic void addPreloadRequest(java.lang.String connectorClass,
java.lang.String binName,
double weightedMinimumDepth)
addPreloadRequest in interface IReprioritizationTrackerpublic void preloadBinValues()
throws ManifoldCFException
preloadBinValues in interface IReprioritizationTrackerManifoldCFExceptionpublic void clearPreloadRequests()
clearPreloadRequests in interface IReprioritizationTrackerpublic void clearPreloadedValues()
clearPreloadedValues in interface IReprioritizationTrackerpublic double getIncrementBinValue(java.lang.String connectorClass,
java.lang.String binName,
double weightedMinimumDepth)
throws ManifoldCFException
getIncrementBinValue in interface IReprioritizationTrackerconnectorClass - is the connector class name.binName - is the bin name.weightedMinimumDepth - is the minimum depth to use.ManifoldCFExceptionprotected java.lang.String readProcessID()
throws ManifoldCFException
ManifoldCFExceptionprotected void writeProcessID(java.lang.String processID)
throws ManifoldCFException
processID - is the process ID to write.ManifoldCFExceptionprotected java.lang.String readReproID()
throws ManifoldCFException
ManifoldCFExceptionprotected void writeReproID(java.lang.String reproID)
throws ManifoldCFException
reproID - is the repro ID to write.ManifoldCFExceptionprotected double readMinimumDepth()
throws ManifoldCFException
ManifoldCFExceptionprotected void writeMinimumDepth(double depth)
throws ManifoldCFException
depth - the minimum depth.ManifoldCFException