public class ThrottleGroups extends Object implements IThrottleGroups
| Modifier and Type | Field and Description |
|---|---|
static 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(String throttleGroupType,
String throttleGroup,
IThrottleSpec throttleSpec)
Set or update throttle specification for a throttle group.
|
void |
destroy()
Shut down throttler permanently.
|
void |
freeUnusedResources()
Free unused resources.
|
Set<String> |
getThrottleGroups(String throttleGroupType)
Get all existing throttle groups for a throttle group type.
|
IConnectionThrottler |
obtainConnectionThrottler(String throttleGroupType,
String throttleGroup,
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(String throttleGroupType)
Poll periodically, to update cluster-wide statistics and allocation.
|
void |
removeThrottleGroup(String throttleGroupType,
String throttleGroup)
Remove a throttle group.
|
public static final String _rcsid
protected final IThreadContext threadContext
protected static final Throttler throttler
public ThrottleGroups(IThreadContext threadContext) throws ManifoldCFException
ManifoldCFExceptionpublic Set<String> getThrottleGroups(String throttleGroupType) throws ManifoldCFException
getThrottleGroups in interface IThrottleGroupsthrottleGroupType - is the throttle group type.ManifoldCFExceptionpublic void removeThrottleGroup(String throttleGroupType, String throttleGroup) throws ManifoldCFException
removeThrottleGroup in interface IThrottleGroupsthrottleGroupType - is the throttle group type.throttleGroup - is the throttle group.ManifoldCFExceptionpublic void createOrUpdateThrottleGroup(String throttleGroupType, 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(String throttleGroupType, String throttleGroup, 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(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