public class BucketState extends Object implements Serializable
Modifier and Type | Field and Description |
---|---|
static SerializationHandle<BucketState> |
SERIALIZATION_HANDLE |
Constructor and Description |
---|
BucketState(BucketConfiguration configuration,
long currentTimeNanos) |
Modifier and Type | Method and Description |
---|---|
void |
addTokens(Bandwidth[] limits,
long tokensToAdd) |
long |
calculateDelayNanosAfterWillBePossibleToConsume(Bandwidth[] bandwidths,
long tokensToConsume,
long currentTimeNanos) |
void |
consume(Bandwidth[] bandwidths,
long toConsume) |
BucketState |
copy() |
void |
copyStateFrom(BucketState sourceState) |
static BucketState |
createInitialState(BucketConfiguration configuration,
long currentTimeNanos) |
boolean |
equals(Object o) |
void |
forceAddTokens(Bandwidth[] limits,
long tokensToAdd) |
long |
getAvailableTokens(Bandwidth[] bandwidths) |
int |
hashCode() |
static void |
main(String[] args) |
void |
refillAllBandwidth(Bandwidth[] limits,
long currentTimeNanos) |
BucketState |
replaceConfiguration(BucketConfiguration previousConfiguration,
BucketConfiguration newConfiguration,
TokensInheritanceStrategy tokensInheritanceStrategy,
long currentTimeNanos) |
String |
toString() |
public static final SerializationHandle<BucketState> SERIALIZATION_HANDLE
public BucketState(BucketConfiguration configuration, long currentTimeNanos)
public BucketState copy()
public void copyStateFrom(BucketState sourceState)
public static BucketState createInitialState(BucketConfiguration configuration, long currentTimeNanos)
public BucketState replaceConfiguration(BucketConfiguration previousConfiguration, BucketConfiguration newConfiguration, TokensInheritanceStrategy tokensInheritanceStrategy, long currentTimeNanos)
public static void main(String[] args)
public long getAvailableTokens(Bandwidth[] bandwidths)
public void consume(Bandwidth[] bandwidths, long toConsume)
public long calculateDelayNanosAfterWillBePossibleToConsume(Bandwidth[] bandwidths, long tokensToConsume, long currentTimeNanos)
public void refillAllBandwidth(Bandwidth[] limits, long currentTimeNanos)
public void addTokens(Bandwidth[] limits, long tokensToAdd)
public void forceAddTokens(Bandwidth[] limits, long tokensToAdd)
Copyright © 2021. All rights reserved.