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
ManifoldCFException
public void startReprioritization(java.lang.String processID, java.lang.String reproID) throws ManifoldCFException
startReprioritization
in interface IReprioritizationTracker
processID
- is the process ID of the process performing/waiting for the prioritization
to complete.reproID
- is the reprocessing thread IDManifoldCFException
public void doneReprioritization(java.lang.String reproID) throws ManifoldCFException
doneReprioritization
in interface IReprioritizationTracker
reproID
- is the process ID of the process completing the prioritization.ManifoldCFException
public java.lang.String isSpecifiedProcessReprioritizing(java.lang.String processID) throws ManifoldCFException
isSpecifiedProcessReprioritizing
in interface IReprioritizationTracker
processID
- is the process ID to check.ManifoldCFException
public void assessMinimumDepth(java.lang.Double[] binNamesSet) throws ManifoldCFException
assessMinimumDepth
in interface IReprioritizationTracker
binNamesSet
- is the current set of priorities we see on the queuing operation.ManifoldCFException
public double getMinimumDepth() throws ManifoldCFException
getMinimumDepth
in interface IReprioritizationTracker
ManifoldCFException
public void addPreloadRequest(java.lang.String connectorClass, java.lang.String binName, double weightedMinimumDepth)
addPreloadRequest
in interface IReprioritizationTracker
public void preloadBinValues() throws ManifoldCFException
preloadBinValues
in interface IReprioritizationTracker
ManifoldCFException
public void clearPreloadRequests()
clearPreloadRequests
in interface IReprioritizationTracker
public void clearPreloadedValues()
clearPreloadedValues
in interface IReprioritizationTracker
public double getIncrementBinValue(java.lang.String connectorClass, java.lang.String binName, double weightedMinimumDepth) throws ManifoldCFException
getIncrementBinValue
in interface IReprioritizationTracker
connectorClass
- is the connector class name.binName
- is the bin name.weightedMinimumDepth
- is the minimum depth to use.ManifoldCFException
protected java.lang.String readProcessID() throws ManifoldCFException
ManifoldCFException
protected void writeProcessID(java.lang.String processID) throws ManifoldCFException
processID
- is the process ID to write.ManifoldCFException
protected java.lang.String readReproID() throws ManifoldCFException
ManifoldCFException
protected void writeReproID(java.lang.String reproID) throws ManifoldCFException
reproID
- is the repro ID to write.ManifoldCFException
protected double readMinimumDepth() throws ManifoldCFException
ManifoldCFException
protected void writeMinimumDepth(double depth) throws ManifoldCFException
depth
- the minimum depth.ManifoldCFException