# Package org.apache.synapse.commons.throttle.core

- Interface Summary
  Interface | Description
  --- | ---
  DistributedCounterManager | This interface used to replicate throttling counters and windows in distributed manner.
  ThrottleConfiguration | The abstraction to holds all the controlling policy parameter

- Class Summary
  Class | Description
  --- | ---
  AccessInformation | this returns the throttling access information based on the policy at runtime
  AccessRateController | Controls the access of remote callers according to the controlling policy .
  CallerConfiguration | All the configuration data for a caller – this data have been defined according to the policy
  CallerContext | Contains all runtime data for a particular remote caller.
  ConcurrentAccessController | Controls the concurrent access through throttle to the system based on policy
  ConcurrentAccessReplicator |
  ConcurrentAccessUpdateClusterMessage |
  RoleBasedAccessRateController | Controls the access of remote callers according to the controlling policy .
  SharedParamManager |
  Throttle | The representation for Throttle - holds the both of runtime and static data.
  ThrottleConstants |
  ThrottleContext | Holds the all runtime data corresponding to call remote callers.
  ThrottleContextCleanupTask | This task is responsible for cleanup callers which has expired along with hazelcast shared params
  ThrottleDataHolder | This class is used to keep frequently changing Throttle data.
  ThrottleFactory | Factory for creating a throttle instance using throttle policy
  ThrottlePolicyProcessor | Deprecated. The class for processing policy that specify throttle configuration
  ThrottleProperties |
  ThrottleReplicator |
  ThrottleUtil |
  ThrottleWindowReplicator |

- Exception Summary
  Exception | Description
  --- | ---
  ThrottleException | Exception for throttle