Package ai.nextbillion.maps.internal
Class RateLimitExecutorService
java.lang.Object
ai.nextbillion.maps.internal.RateLimitExecutorService
- All Implemented Interfaces:
java.lang.Runnable,java.util.concurrent.Executor,java.util.concurrent.ExecutorService
public class RateLimitExecutorService
extends java.lang.Object
implements java.util.concurrent.ExecutorService, java.lang.Runnable
Rate Limit Policy for Google Maps Web Services APIs.
-
Constructor Summary
Constructors Constructor Description RateLimitExecutorService() -
Method Summary
Modifier and Type Method Description booleanawaitTermination(long l, java.util.concurrent.TimeUnit timeUnit)voidexecute(java.lang.Runnable runnable)<T> java.util.List<java.util.concurrent.Future<T>>invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables)<T> java.util.List<java.util.concurrent.Future<T>>invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables, long l, java.util.concurrent.TimeUnit timeUnit)<T> TinvokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables)<T> TinvokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables, long l, java.util.concurrent.TimeUnit timeUnit)booleanisShutdown()booleanisTerminated()voidrun()Main loop.voidsetQueriesPerSecond(int maxQps)voidshutdown()java.util.List<java.lang.Runnable>shutdownNow()java.util.concurrent.Future<?>submit(java.lang.Runnable runnable)<T> java.util.concurrent.Future<T>submit(java.lang.Runnable runnable, T t)<T> java.util.concurrent.Future<T>submit(java.util.concurrent.Callable<T> tCallable)
-
Constructor Details
-
RateLimitExecutorService
public RateLimitExecutorService()
-
-
Method Details
-
setQueriesPerSecond
public void setQueriesPerSecond(int maxQps) -
run
public void run()Main loop.- Specified by:
runin interfacejava.lang.Runnable
-
execute
public void execute(java.lang.Runnable runnable)- Specified by:
executein interfacejava.util.concurrent.Executor
-
shutdown
public void shutdown()- Specified by:
shutdownin interfacejava.util.concurrent.ExecutorService
-
shutdownNow
public java.util.List<java.lang.Runnable> shutdownNow()- Specified by:
shutdownNowin interfacejava.util.concurrent.ExecutorService
-
isShutdown
public boolean isShutdown()- Specified by:
isShutdownin interfacejava.util.concurrent.ExecutorService
-
isTerminated
public boolean isTerminated()- Specified by:
isTerminatedin interfacejava.util.concurrent.ExecutorService
-
awaitTermination
public boolean awaitTermination(long l, java.util.concurrent.TimeUnit timeUnit) throws java.lang.InterruptedException- Specified by:
awaitTerminationin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedException
-
submit
public <T> java.util.concurrent.Future<T> submit(java.util.concurrent.Callable<T> tCallable)- Specified by:
submitin interfacejava.util.concurrent.ExecutorService
-
submit
public <T> java.util.concurrent.Future<T> submit(java.lang.Runnable runnable, T t)- Specified by:
submitin interfacejava.util.concurrent.ExecutorService
-
submit
public java.util.concurrent.Future<?> submit(java.lang.Runnable runnable)- Specified by:
submitin interfacejava.util.concurrent.ExecutorService
-
invokeAll
public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables) throws java.lang.InterruptedException- Specified by:
invokeAllin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedException
-
invokeAll
public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables, long l, java.util.concurrent.TimeUnit timeUnit) throws java.lang.InterruptedException- Specified by:
invokeAllin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedException
-
invokeAny
public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException- Specified by:
invokeAnyin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionException
-
invokeAny
public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> callables, long l, java.util.concurrent.TimeUnit timeUnit) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException- Specified by:
invokeAnyin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeoutException
-