final class RateLimitServiceImpl extends java.lang.Object implements RateLimitService
Modifier and Type | Field and Description |
---|---|
private RateLimitConfiguration |
config |
private int |
limit |
private javax.inject.Provider<RateLimitRepository> |
repo |
private long |
timeToLiveInMillis |
Constructor and Description |
---|
RateLimitServiceImpl(RateLimitConfiguration config,
javax.inject.Provider<RateLimitRepository> repo,
int limit,
long timeToLiveInMillis) |
private final RateLimitConfiguration config
private final javax.inject.Provider<RateLimitRepository> repo
private final int limit
private final long timeToLiveInMillis
public RateLimitServiceImpl(RateLimitConfiguration config, javax.inject.Provider<RateLimitRepository> repo, int limit, long timeToLiveInMillis)
protected RateLimitConfiguration getConfig()
public RateLimit consume(java.lang.String tokenId)
consume
in interface RateLimitService
tokenId
- either a Shop GUID or a OAuth1 TokenID :(public RateLimit get(java.lang.String tokenId)
get
in interface RateLimitService
tokenId
- either a Shop GUID or a OAuth1 TokenID :(private RateLimit create(java.lang.String tokenId)