Package com.github.cowwoc.tokenbucket
Class Bucket.ConfigurationUpdater
java.lang.Object
com.github.cowwoc.tokenbucket.Bucket.ConfigurationUpdater
- All Implemented Interfaces:
AutoCloseable
- Enclosing class:
- Bucket
Updates this Bucket's configuration.
Thread-safety: This class is not thread-safe.
-
Method Summary
Modifier and TypeMethodDescriptionaddLimit
(Function<Limit.Builder, Limit> limitBuilder) Adds a limit that the bucket must respect.addListener
(ContainerListener listener) Adds an event listener to the bucket.clear()
Removes all limits.void
close()
Updates this Bucket's configuration.limits()
Returns the limits that the bucket must respect.removeLimit
(Limit limit) Removes a limit that the bucket must respect.removeListener
(ContainerListener listener) Removes an event listener from the bucket.toString()
userData()
Returns the user data associated with this bucket.Sets user data associated with this bucket.
-
Method Details
-
limits
Returns the limits that the bucket must respect.- Returns:
- the limits that the bucket must respect
- Throws:
IllegalStateException
- if the updater is closed
-
addLimit
Adds a limit that the bucket must respect.- Parameters:
limitBuilder
- builds a Limit- Returns:
- this
- Throws:
NullPointerException
- iflimit
is nullIllegalStateException
- if the updater is closed
-
removeLimit
Removes a limit that the bucket must respect.- Parameters:
limit
- a limit- Returns:
- this
- Throws:
NullPointerException
- iflimit
is nullIllegalStateException
- if the updater is closed
-
clear
Removes all limits.- Returns:
- this
- Throws:
IllegalStateException
- if the updater is closed
-
addListener
Adds an event listener to the bucket.- Parameters:
listener
- a listener- Returns:
- this
- Throws:
NullPointerException
- iflistener
is nullIllegalStateException
- if the updater is closed
-
removeListener
Removes an event listener from the bucket.- Parameters:
listener
- a listener- Returns:
- this
- Throws:
NullPointerException
- iflistener
is nullIllegalStateException
- if the updater is closed
-
userData
Returns the user data associated with this bucket.- Returns:
- the data associated with this bucket
- Throws:
IllegalStateException
- if the updater is closed
-
userData
Sets user data associated with this bucket.- Parameters:
userData
- the data associated with this bucket- Returns:
- this
- Throws:
IllegalStateException
- if the updater is closed
-
close
public void close()Updates this Bucket's configuration.- Specified by:
close
in interfaceAutoCloseable
- Throws:
IllegalArgumentException
- iflimits
is empty
-
toString
-