public class ThrottleGroups extends java.lang.Object implements IThrottleGroups
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
_rcsid |
protected IThreadContext |
threadContext
The thread context
|
protected static Throttler |
throttler
The actual static pool
|
| Constructor and Description |
|---|
ThrottleGroups(IThreadContext threadContext)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
void |
createOrUpdateThrottleGroup(java.lang.String throttleGroupType,
java.lang.String throttleGroup,
IThrottleSpec throttleSpec)
Set or update throttle specification for a throttle group.
|
void |
destroy()
Shut down throttler permanently.
|
void |
freeUnusedResources()
Free unused resources.
|
java.util.Set<java.lang.String> |
getThrottleGroups(java.lang.String throttleGroupType)
Get all existing throttle groups for a throttle group type.
|
IConnectionThrottler |
obtainConnectionThrottler(java.lang.String throttleGroupType,
java.lang.String throttleGroup,
java.lang.String[] binNames)
Construct connection throttler for connections with specific bin names.
|
void |
poll()
Poll periodically, to update ALL cluster-wide statistics and allocation.
|
void |
poll(java.lang.String throttleGroupType)
Poll periodically, to update cluster-wide statistics and allocation.
|
void |
removeThrottleGroup(java.lang.String throttleGroupType,
java.lang.String throttleGroup)
Remove a throttle group.
|
public static final java.lang.String _rcsid
protected final IThreadContext threadContext
protected static final Throttler throttler
public ThrottleGroups(IThreadContext threadContext) throws ManifoldCFException
ManifoldCFExceptionpublic java.util.Set<java.lang.String> getThrottleGroups(java.lang.String throttleGroupType)
throws ManifoldCFException
getThrottleGroups in interface IThrottleGroupsthrottleGroupType - is the throttle group type.ManifoldCFExceptionpublic void removeThrottleGroup(java.lang.String throttleGroupType,
java.lang.String throttleGroup)
throws ManifoldCFException
removeThrottleGroup in interface IThrottleGroupsthrottleGroupType - is the throttle group type.throttleGroup - is the throttle group.ManifoldCFExceptionpublic void createOrUpdateThrottleGroup(java.lang.String throttleGroupType,
java.lang.String throttleGroup,
IThrottleSpec throttleSpec)
throws ManifoldCFException
createOrUpdateThrottleGroup in interface IThrottleGroupsthrottleGroupType - is the throttle group type.throttleGroup - is the throttle group.throttleSpec - is the desired throttle specification object.ManifoldCFExceptionpublic IConnectionThrottler obtainConnectionThrottler(java.lang.String throttleGroupType, java.lang.String throttleGroup, java.lang.String[] binNames) throws ManifoldCFException
obtainConnectionThrottler in interface IThrottleGroupsthrottleGroupType - is the throttle group type.throttleGroup - is the throttle group.binNames - are the connection type bin names.ManifoldCFExceptionpublic void poll(java.lang.String throttleGroupType)
throws ManifoldCFException
poll in interface IThrottleGroupsthrottleGroupType - is the throttle group type to update.ManifoldCFExceptionpublic void poll()
throws ManifoldCFException
poll in interface IThrottleGroupsManifoldCFExceptionpublic void freeUnusedResources()
throws ManifoldCFException
freeUnusedResources in interface IThrottleGroupsManifoldCFExceptionpublic void destroy()
throws ManifoldCFException
destroy in interface IThrottleGroupsManifoldCFException