Uses of Class
com.google.common.annotations.J2ktIncompatible
-
Packages that use J2ktIncompatible Package Description com.google.common.base Basic utility libraries and interfaces.com.google.common.collect Collection interfaces and implementations, and other utilities for collections.com.google.common.io Utility methods and classes for I/O; for example input streams, output streams, readers, writers, and files.com.google.common.math Arithmetic functions operating on primitive values and onBigInteger
andBigDecimal
instances.com.google.common.net Utility methods and classes for networking (such as IP addresses and domain names).com.google.common.primitives Static utilities for the eight primitive types andvoid
, and value types for treating them as unsigned or storing them in immutable arrays.com.google.common.util.concurrent Concurrency utilities. -
-
Uses of J2ktIncompatible in com.google.common.base
Classes in com.google.common.base with annotations of type J2ktIncompatible Modifier and Type Class Description class
Defaults
This class provides default values for all Java types, as defined by the JLS.class
Enums
Utility methods for working withEnum
instances.class
FinalizablePhantomReference<T>
Phantom reference with afinalizeReferent()
method which a background thread invokes after the garbage collector reclaims the referent.interface
FinalizableReference
Implemented by references that have code to run after garbage collection of their referents.class
FinalizableReferenceQueue
A reference queue with an associated background thread that dequeues references and invokesFinalizableReference.finalizeReferent()
on them.class
FinalizableSoftReference<T>
Soft reference with afinalizeReferent()
method which a background thread invokes after the garbage collector reclaims the referent.class
FinalizableWeakReference<T>
Weak reference with afinalizeReferent()
method which a background thread invokes after the garbage collector reclaims the referent.class
StandardSystemProperty
Represents a standard system property.Fields in com.google.common.base with annotations of type J2ktIncompatible Modifier and Type Field Description static java.nio.charset.Charset
Charsets. US_ASCII
US-ASCII: seven-bit ASCII, the Basic Latin block of the Unicode character set (ISO646-US).static java.nio.charset.Charset
Charsets. UTF_16
UTF-16: sixteen-bit UCS Transformation Format, byte order identified by an optional byte-order mark.static java.nio.charset.Charset
Charsets. UTF_16BE
UTF-16BE: sixteen-bit UCS Transformation Format, big-endian byte order.static java.nio.charset.Charset
Charsets. UTF_16LE
UTF-16LE: sixteen-bit UCS Transformation Format, little-endian byte order.Methods in com.google.common.base with annotations of type J2ktIncompatible Modifier and Type Method Description static Predicate<java.lang.CharSequence>
Predicates. contains(java.util.regex.Pattern pattern)
Returns a predicate that evaluates totrue
if theCharSequence
being tested contains any match for the given regular expression pattern.static Predicate<java.lang.CharSequence>
Predicates. containsPattern(java.lang.String pattern)
Returns a predicate that evaluates totrue
if theCharSequence
being tested contains any match for the given regular expression pattern.java.time.Duration
Stopwatch. elapsed()
Returns the current elapsed time shown on this stopwatch as aDuration
.static <X extends java.lang.Throwable>
XThrowables. getCauseAs(java.lang.Throwable throwable, java.lang.Class<X> expectedCauseType)
Returnsthrowable
's cause, cast toexpectedCauseType
.static java.util.List<java.lang.StackTraceElement>
Throwables. lazyStackTrace(java.lang.Throwable throwable)
Deprecated.This method is equivalent toThrowable.getStackTrace()
on JDK versions past JDK 8 and on all Android versions.static boolean
Throwables. lazyStackTraceIsLazy()
Deprecated.This method always returns false on JDK versions past JDK 8 and on all Android versions.static Splitter
Splitter. on(java.util.regex.Pattern separatorPattern)
Returns a splitter that considers any subsequence matchingpattern
to be a separator.static Splitter
Splitter. onPattern(java.lang.String separatorPattern)
Returns a splitter that considers any subsequence matching a given pattern (regular expression) to be a separator.static java.lang.RuntimeException
Throwables. propagate(java.lang.Throwable throwable)
Deprecated.To preserve behavior, usethrow e
orthrow new RuntimeException(e)
directly, or use a combination ofThrowables.throwIfUnchecked(java.lang.Throwable)
andthrow new RuntimeException(e)
.static <X extends java.lang.Throwable>
voidThrowables. propagateIfInstanceOf(java.lang.Throwable throwable, java.lang.Class<X> declaredType)
Deprecated.UseThrowables.throwIfInstanceOf(java.lang.Throwable, java.lang.Class<X>)
, which has the same behavior but rejectsnull
.static void
Throwables. propagateIfPossible(java.lang.Throwable throwable)
Deprecated.UseThrowables.throwIfUnchecked(java.lang.Throwable)
, which has the same behavior but rejectsnull
.static <X extends java.lang.Throwable>
voidThrowables. propagateIfPossible(java.lang.Throwable throwable, java.lang.Class<X> declaredType)
Propagatesthrowable
exactly as-is, if and only if it is an instance ofRuntimeException
,Error
, ordeclaredType
.static <X1 extends java.lang.Throwable,X2 extends java.lang.Throwable>
voidThrowables. propagateIfPossible(java.lang.Throwable throwable, java.lang.Class<X1> declaredType1, java.lang.Class<X2> declaredType2)
Propagatesthrowable
exactly as-is, if and only if it is an instance ofRuntimeException
,Error
,declaredType1
, ordeclaredType2
.static Predicate<java.lang.Class<?>>
Predicates. subtypeOf(java.lang.Class<?> clazz)
Returns a predicate that evaluates totrue
if the class being tested is assignable to (is a subtype of)clazz
.static <X extends java.lang.Throwable>
voidThrowables. throwIfInstanceOf(java.lang.Throwable throwable, java.lang.Class<X> declaredType)
Throwsthrowable
if it is an instance ofdeclaredType
. -
Uses of J2ktIncompatible in com.google.common.collect
Classes in com.google.common.collect with annotations of type J2ktIncompatible Modifier and Type Class Description class
ConcurrentHashMultiset<E>
A multiset that supports concurrent modifications and that provides atomic versions of mostMultiset
operations (exceptions where noted).class
EnumBiMap<K extends java.lang.Enum<K>,V extends java.lang.Enum<V>>
ABiMap
backed by twoEnumMap
instances.class
EnumHashBiMap<K extends java.lang.Enum<K>,V extends @Nullable java.lang.Object>
ABiMap
backed by anEnumMap
instance for keys-to-values, and aHashMap
instance for values-to-keys.class
EnumMultiset<E extends java.lang.Enum<E>>
Multiset implementation specialized for enum elements, supporting all single-element operations in O(1).class
ForwardingBlockingDeque<E>
Deprecated.This class has moved tocom.google.common.util.concurrent
.class
ForwardingDeque<E extends @Nullable java.lang.Object>
A deque which forwards all its method calls to another deque.interface
Interner<E>
Provides similar behavior toString.intern()
for any immutable type.class
Interners
Contains static methods pertaining to instances ofInterner
.class
MapMaker
A builder ofConcurrentMap
instances that can have keys or values automatically wrapped in weak references.class
MutableClassToInstanceMap<B extends @Nullable java.lang.Object>
A mutable class-to-instance map backed by an arbitrary user-provided map.Methods in com.google.common.collect with annotations of type J2ktIncompatible Modifier and Type Method Description static Ordering<@Nullable java.lang.Object>
Ordering. arbitrary()
Returns an arbitrary ordering over all objects, for whichcompare(a, b) == 0
impliesa == b
(identity equality).static <E extends java.lang.Enum<E>>
java.util.EnumSet<E>Sets. complementOf(java.util.Collection<E> collection)
Creates anEnumSet
consisting of all enum values that are not in the specified collection.static <E> int
Queues. drain(java.util.concurrent.BlockingQueue<E> q, java.util.Collection<? super E> buffer, int numElements, long timeout, java.util.concurrent.TimeUnit unit)
Drains the queue asBlockingQueue.drainTo(Collection, int)
, but if the requestednumElements
elements are not available, it will wait for them up to the specified timeout.static <E> int
Queues. drain(java.util.concurrent.BlockingQueue<E> q, java.util.Collection<? super E> buffer, int numElements, java.time.Duration timeout)
Drains the queue asBlockingQueue.drainTo(Collection, int)
, but if the requestednumElements
elements are not available, it will wait for them up to the specified timeout.static <E> int
Queues. drainUninterruptibly(java.util.concurrent.BlockingQueue<E> q, java.util.Collection<? super E> buffer, int numElements, long timeout, java.util.concurrent.TimeUnit unit)
Drains the queue as Queues.drain(BlockingQueue, Collection, int, long, TimeUnit), but with a different behavior in case it is interrupted while waiting.static <E> int
Queues. drainUninterruptibly(java.util.concurrent.BlockingQueue<E> q, java.util.Collection<? super E> buffer, int numElements, java.time.Duration timeout)
Drains the queue as Queues.drain(BlockingQueue, Collection, int, Duration), but with a different behavior in case it is interrupted while waiting.static ImmutableMap<java.lang.String,java.lang.String>
Maps. fromProperties(java.util.Properties properties)
Creates anImmutableMap<String, String>
from aProperties
instance.static <K extends java.lang.Enum<K>,V>
ImmutableMap<K,V>Maps. immutableEnumMap(java.util.Map<K,? extends V> map)
Returns an immutable map instance containing the given entries.static <E> java.util.concurrent.ArrayBlockingQueue<E>
Queues. newArrayBlockingQueue(int capacity)
Creates an emptyArrayBlockingQueue
with the given (fixed) capacity and nonfair access policy.static <E> java.util.concurrent.ConcurrentLinkedQueue<E>
Queues. newConcurrentLinkedQueue()
Creates an emptyConcurrentLinkedQueue
.static <E> java.util.concurrent.ConcurrentLinkedQueue<E>
Queues. newConcurrentLinkedQueue(java.lang.Iterable<? extends E> elements)
Creates aConcurrentLinkedQueue
containing the elements of the specified iterable, in the order they are returned by the iterable's iterator.static <E extends @Nullable java.lang.Object>
java.util.concurrent.CopyOnWriteArrayList<E>Lists. newCopyOnWriteArrayList()
Creates an emptyCopyOnWriteArrayList
instance.static <E extends @Nullable java.lang.Object>
java.util.concurrent.CopyOnWriteArrayList<E>Lists. newCopyOnWriteArrayList(java.lang.Iterable<? extends E> elements)
Creates aCopyOnWriteArrayList
instance containing the given elements.static <E extends @Nullable java.lang.Object>
java.util.concurrent.CopyOnWriteArraySet<E>Sets. newCopyOnWriteArraySet()
Creates an emptyCopyOnWriteArraySet
instance.static <E extends @Nullable java.lang.Object>
java.util.concurrent.CopyOnWriteArraySet<E>Sets. newCopyOnWriteArraySet(java.lang.Iterable<? extends E> elements)
Creates aCopyOnWriteArraySet
instance containing the given elements.static <E> java.util.concurrent.LinkedBlockingDeque<E>
Queues. newLinkedBlockingDeque()
Creates an emptyLinkedBlockingDeque
with a capacity ofInteger.MAX_VALUE
.static <E> java.util.concurrent.LinkedBlockingDeque<E>
Queues. newLinkedBlockingDeque(int capacity)
Creates an emptyLinkedBlockingDeque
with the given (fixed) capacity.static <E> java.util.concurrent.LinkedBlockingDeque<E>
Queues. newLinkedBlockingDeque(java.lang.Iterable<? extends E> elements)
Creates aLinkedBlockingDeque
with a capacity ofInteger.MAX_VALUE
, containing the elements of the specified iterable, in the order they are returned by the iterable's iterator.static <E> java.util.concurrent.LinkedBlockingQueue<E>
Queues. newLinkedBlockingQueue()
Creates an emptyLinkedBlockingQueue
with a capacity ofInteger.MAX_VALUE
.static <E> java.util.concurrent.LinkedBlockingQueue<E>
Queues. newLinkedBlockingQueue(int capacity)
Creates an emptyLinkedBlockingQueue
with the given (fixed) capacity.static <E> java.util.concurrent.LinkedBlockingQueue<E>
Queues. newLinkedBlockingQueue(java.lang.Iterable<? extends E> elements)
Creates aLinkedBlockingQueue
with a capacity ofInteger.MAX_VALUE
, containing the elements of the specified iterable, in the order they are returned by the iterable's iterator.static <E extends java.lang.Comparable>
java.util.concurrent.PriorityBlockingQueue<E>Queues. newPriorityBlockingQueue()
Creates an emptyPriorityBlockingQueue
with the ordering given by its elements' natural ordering.static <E extends java.lang.Comparable>
java.util.concurrent.PriorityBlockingQueue<E>Queues. newPriorityBlockingQueue(java.lang.Iterable<? extends E> elements)
Creates aPriorityBlockingQueue
containing the given elements.static <E> java.util.concurrent.SynchronousQueue<E>
Queues. newSynchronousQueue()
Creates an emptySynchronousQueue
with nonfair access policy.java.lang.Object[]
EvictingQueue. toArray()
java.lang.Object[]
ImmutableCollection. toArray()
java.lang.Object[]
MinMaxPriorityQueue. toArray()
static <T extends @Nullable java.lang.Object,K extends java.lang.Enum<K>,V>
java.util.stream.Collector<T,?,ImmutableMap<K,V>>Maps. toImmutableEnumMap(java.util.function.Function<? super T,? extends K> keyFunction, java.util.function.Function<? super T,? extends V> valueFunction)
Returns aCollector
that accumulates elements into anImmutableMap
whose keys and values are the result of applying the provided mapping functions to the input elements.static <T extends @Nullable java.lang.Object,K extends java.lang.Enum<K>,V>
java.util.stream.Collector<T,?,ImmutableMap<K,V>>Maps. toImmutableEnumMap(java.util.function.Function<? super T,? extends K> keyFunction, java.util.function.Function<? super T,? extends V> valueFunction, java.util.function.BinaryOperator<V> mergeFunction)
Returns aCollector
that accumulates elements into anImmutableMap
whose keys and values are the result of applying the provided mapping functions to the input elements. -
Uses of J2ktIncompatible in com.google.common.io
Classes in com.google.common.io with annotations of type J2ktIncompatible Modifier and Type Interface Description interface
ByteArrayDataInput
An extension ofDataInput
for reading from in-memory byte arrays; its methods offer identical functionality but do not throwIOException
.interface
ByteArrayDataOutput
An extension ofDataOutput
for writing to in-memory byte arrays; its methods offer identical functionality but do not throwIOException
.interface
ByteProcessor<T extends @Nullable java.lang.Object>
A callback interface to process bytes from a stream.class
ByteSink
A destination to which bytes can be written, such as a file.class
ByteSource
A readable source of bytes, such as a file.class
ByteStreams
Provides utility methods for working with byte arrays and I/O streams.class
CharSink
A destination to which characters can be written, such as a text file.class
CharSource
A readable source of characters, such as a text file.class
CharStreams
Provides utility methods for working with character streams.class
Closeables
Utility methods for working withCloseable
objects.class
Closer
class
CountingInputStream
AnInputStream
that counts the number of bytes read.class
CountingOutputStream
An OutputStream that counts the number of bytes written.class
FileBackedOutputStream
AnOutputStream
that starts buffering to a byte array, but switches to file buffering once the data reaches a configurable size.class
Files
Provides utility methods for working with files.class
FileWriteMode
Modes for opening a file for writing.class
Flushables
Utility methods for working withFlushable
objects.class
InsecureRecursiveDeleteException
Exception indicating that a recursive delete can't be performed because the file system does not have the support necessary to guarantee that it is not vulnerable to race conditions that would allow it to delete files and directories outside of the directory being deleted (i.e.,SecureDirectoryStream
is not supported).interface
LineProcessor<T extends @Nullable java.lang.Object>
A callback to be used with the streamingreadLines
methods.class
LineReader
A class for reading lines of text.class
LittleEndianDataInputStream
An implementation ofDataInput
that uses little-endian byte ordering for readingshort
,int
,float
,double
, andlong
values.class
LittleEndianDataOutputStream
An implementation ofDataOutput
that uses little-endian byte ordering for writingchar
,short
,int
,float
,double
, andlong
values.class
MoreFiles
Static utilities for use withPath
instances, intended to complementFiles
.class
PatternFilenameFilter
File name filter that only accepts files matching a regular expression.class
RecursiveDeleteOption
Options for use with recursive delete methods (MoreFiles.deleteRecursively(java.nio.file.Path, com.google.common.io.RecursiveDeleteOption...)
andMoreFiles.deleteDirectoryContents(java.nio.file.Path, com.google.common.io.RecursiveDeleteOption...)
).class
Resources
Provides utility methods for working with resources in the classpath.Methods in com.google.common.io with annotations of type J2ktIncompatible Modifier and Type Method Description ByteSource
BaseEncoding. decodingSource(CharSource encodedSource)
Returns aByteSource
that reads base-encoded bytes from the specifiedCharSource
.abstract java.io.InputStream
BaseEncoding. decodingStream(java.io.Reader reader)
Returns anInputStream
that decodes base-encoded input from the specifiedReader
.ByteSink
BaseEncoding. encodingSink(CharSink encodedSink)
Returns aByteSink
that writes base-encoded bytes to the specifiedCharSink
.abstract java.io.OutputStream
BaseEncoding. encodingStream(java.io.Writer writer)
Returns anOutputStream
that encodes bytes using this encoding into the specifiedWriter
. -
Uses of J2ktIncompatible in com.google.common.math
Classes in com.google.common.math with annotations of type J2ktIncompatible Modifier and Type Class Description class
BigDecimalMath
A class for arithmetic onBigDecimal
that is not covered by its built-in methods.class
LinearTransformation
The representation of a linear transformation between real numbersx
andy
.class
PairedStats
An immutable value object capturing some basic statistics about a collection of paired double values (e.g.class
PairedStatsAccumulator
A mutable object which accumulates paired double values (e.g.class
Quantiles
Provides a fluent API for calculating quantiles.class
Stats
A bundle of statistical summary values -- sum, count, mean/average, min and max, and several forms of variance -- that were computed from a single set of zero or more floating-point values.class
StatsAccumulator
A mutable object which accumulates double values and tracks some basic statistics over all the values added so far.Methods in com.google.common.math with annotations of type J2ktIncompatible Modifier and Type Method Description static long
LongMath. checkedPow(long b, int k)
Returns theb
to thek
th power, provided it does not overflow.static long
LongMath. checkedSubtract(long a, long b)
Returns the difference ofa
andb
, provided it does not overflow.static java.math.BigInteger
BigIntegerMath. divide(java.math.BigInteger p, java.math.BigInteger q, java.math.RoundingMode mode)
Returns the result of dividingp
byq
, rounding using the specifiedRoundingMode
.static long
LongMath. divide(long p, long q, java.math.RoundingMode mode)
Returns the result of dividingp
byq
, rounding using the specifiedRoundingMode
.static long
LongMath. factorial(int n)
Returnsn!
, that is, the product of the firstn
positive integers,1
ifn == 0
, orLong.MAX_VALUE
if the result does not fit in along
.static boolean
DoubleMath. isPowerOfTwo(double x)
Returnstrue
ifx
is exactly equal to2^k
for some finite integerk
.static boolean
IntMath. isPrime(int n)
Returnstrue
ifn
is a prime number: an integer greater than one that cannot be factored into a product of smaller positive integers.static boolean
LongMath. isPrime(long n)
Returnstrue
ifn
is a prime number: an integer greater than one that cannot be factored into a product of smaller positive integers.static int
BigIntegerMath. log10(java.math.BigInteger x, java.math.RoundingMode mode)
Returns the base-10 logarithm ofx
, rounded according to the specified rounding mode.static int
IntMath. log10(int x, java.math.RoundingMode mode)
Returns the base-10 logarithm ofx
, rounded according to the specified rounding mode.static int
LongMath. log10(long x, java.math.RoundingMode mode)
Returns the base-10 logarithm ofx
, rounded according to the specified rounding mode.static int
DoubleMath. log2(double x, java.math.RoundingMode mode)
Returns the base 2 logarithm of a double value, rounded with the specified rounding mode to anint
.static double
DoubleMath. mean(double... values)
Deprecated.UseStats.meanOf(java.lang.Iterable<? extends java.lang.Number>)
instead, noting the less strict handling of non-finite values.static double
DoubleMath. mean(java.lang.Iterable<? extends java.lang.Number> values)
Deprecated.UseStats.meanOf(java.lang.Iterable<? extends java.lang.Number>)
instead, noting the less strict handling of non-finite values.static double
DoubleMath. mean(java.util.Iterator<? extends java.lang.Number> values)
Deprecated.UseStats.meanOf(java.lang.Iterable<? extends java.lang.Number>)
instead, noting the less strict handling of non-finite values.static int
LongMath. mod(long x, int m)
Returnsx mod m
, a non-negative value less thanm
.static long
LongMath. mod(long x, long m)
Returnsx mod m
, a non-negative value less thanm
.static int
IntMath. pow(int b, int k)
Returnsb
to thek
th power.static long
LongMath. pow(long b, int k)
Returnsb
to thek
th power.static java.math.BigInteger
DoubleMath. roundToBigInteger(double x, java.math.RoundingMode mode)
Returns theBigInteger
value that is equal tox
rounded with the specified rounding mode, if possible.static double
BigIntegerMath. roundToDouble(java.math.BigInteger x, java.math.RoundingMode mode)
Returnsx
, rounded to adouble
with the specified rounding mode.static double
LongMath. roundToDouble(long x, java.math.RoundingMode mode)
Returnsx
, rounded to adouble
with the specified rounding mode.static int
DoubleMath. roundToInt(double x, java.math.RoundingMode mode)
Returns theint
value that is equal tox
rounded with the specified rounding mode, if possible.static long
DoubleMath. roundToLong(double x, java.math.RoundingMode mode)
Returns thelong
value that is equal tox
rounded with the specified rounding mode, if possible.static java.math.BigInteger
BigIntegerMath. sqrt(java.math.BigInteger x, java.math.RoundingMode mode)
Returns the square root ofx
, rounded with the specified rounding mode.static long
LongMath. sqrt(long x, java.math.RoundingMode mode)
Returns the square root ofx
, rounded with the specified rounding mode. -
Uses of J2ktIncompatible in com.google.common.net
Classes in com.google.common.net with annotations of type J2ktIncompatible Modifier and Type Class Description class
HostSpecifier
A syntactically valid host specifier, suitable for use in a URI.class
InetAddresses
Static utility methods pertaining toInetAddress
instances. -
Uses of J2ktIncompatible in com.google.common.primitives
Classes in com.google.common.primitives with annotations of type J2ktIncompatible Modifier and Type Class Description class
UnsignedBytes
Static utility methods pertaining tobyte
primitives that interpret values as unsigned (that is, any negative valueb
is treated as the positive value256 + b
).Methods in com.google.common.primitives with annotations of type J2ktIncompatible Modifier and Type Method Description UnsignedInteger
UnsignedInteger. times(UnsignedInteger val)
Returns the result of multiplying this andval
.static java.lang.Double
Doubles. tryParse(java.lang.String string)
Parses the specified string as a double-precision floating point value.static java.lang.Float
Floats. tryParse(java.lang.String string)
Parses the specified string as a single-precision floating point value. -
Uses of J2ktIncompatible in com.google.common.util.concurrent
Classes in com.google.common.util.concurrent with annotations of type J2ktIncompatible Modifier and Type Class Description class
AbstractExecutionThreadService
Base class for services that can implementAbstractExecutionThreadService.startUp()
,AbstractExecutionThreadService.run()
andAbstractExecutionThreadService.shutDown()
methods.class
AbstractIdleService
Base class for services that do not need a thread while "running" but may need one during startup and shutdown.class
AbstractListeningExecutorService
AbstractListeningExecutorService
implementation that createsListenableFuture
instances for eachRunnable
andCallable
submitted to it.class
AbstractScheduledService
Base class for services that can implementAbstractScheduledService.startUp()
andAbstractScheduledService.shutDown()
but while in the "running" state need to perform a periodic task.class
AbstractService
Base class for implementing services that can handleAbstractService.doStart()
andAbstractService.doStop()
requests, responding to them withAbstractService.notifyStarted()
andAbstractService.notifyStopped()
callbacks.class
AtomicDouble
Adouble
value that may be updated atomically.class
AtomicDoubleArray
Adouble
array in which elements may be updated atomically.class
AtomicLongMap<K>
A map containinglong
values that can be atomically updated.class
ClosingFuture<V extends @Nullable java.lang.Object>
A step in a pipeline of an asynchronous computation.class
CycleDetectingLockFactory
TheCycleDetectingLockFactory
createsReentrantLock
instances andReentrantReadWriteLock
instances that detect potential deadlock by checking for cycles in lock acquisition order.class
ExecutionList
A support class forListenableFuture
implementations to manage their listeners.class
ExecutionSequencer
Serializes execution of tasks, somewhat like an "asynchronoussynchronized
block." Each enqueued callable will not be submitted to its associated executor until the previous callable has returned -- and, if the previous callable was anAsyncCallable
, not until theFuture
it returned is done (successful, failed, or cancelled).class
FakeTimeLimiter
A TimeLimiter implementation which actually does not attempt to limit time at all.class
ForwardingBlockingDeque<E>
ABlockingDeque
which forwards all its method calls to anotherBlockingDeque
.class
ForwardingBlockingQueue<E>
ABlockingQueue
which forwards all its method calls to anotherBlockingQueue
.class
ForwardingExecutorService
An executor service which forwards all its method calls to another executor service.class
ForwardingListeningExecutorService
A listening executor service which forwards all its method calls to another listening executor service.class
JdkFutureAdapters
Utilities necessary for working with libraries that supply plainFuture
instances.class
ListenableFutureTask<V extends @Nullable java.lang.Object>
AFutureTask
that also implements theListenableFuture
interface.interface
ListeningScheduledExecutorService
AScheduledExecutorService
that returnsListenableFuture
instances from itsExecutorService
methods.class
Monitor
A synchronization abstraction supporting waiting on arbitrary boolean conditions.class
RateLimiter
A rate limiter.interface
Service
An object with an operational state, plus asynchronousService.startAsync()
andService.stopAsync()
lifecycle methods to transition between states.class
ServiceManager
A manager for monitoring and controlling a set of services.class
SimpleTimeLimiter
A TimeLimiter that runs method calls in the background using anExecutorService
.class
Striped<L>
A stripedLock/Semaphore/ReadWriteLock
.class
ThreadFactoryBuilder
A ThreadFactory builder, providing any combination of these features: whether threads should be marked as daemon threads a naming format a thread priority an uncaught exception handler a backing thread factoryinterface
TimeLimiter
Imposes a time limit on method calls.class
UncaughtExceptionHandlers
Factories forThread.UncaughtExceptionHandler
instances.class
UncheckedTimeoutException
Unchecked version ofTimeoutException
.Methods in com.google.common.util.concurrent with annotations of type J2ktIncompatible Modifier and Type Method Description static void
MoreExecutors. addDelayedShutdownHook(java.util.concurrent.ExecutorService service, long terminationTimeout, java.util.concurrent.TimeUnit timeUnit)
Add a shutdown hook to wait for thread completion in the givenservice
.static void
MoreExecutors. addDelayedShutdownHook(java.util.concurrent.ExecutorService service, java.time.Duration terminationTimeout)
Add a shutdown hook to wait for thread completion in the givenservice
.static <T extends @Nullable java.lang.Object>
AsyncCallable<T>Callables. asAsyncCallable(java.util.concurrent.Callable<T> callable, ListeningExecutorService listeningExecutorService)
Creates anAsyncCallable
from aCallable
.default boolean
ListeningExecutorService. awaitTermination(java.time.Duration timeout)
Duration-based overload ofExecutorService.awaitTermination(long, TimeUnit)
.static void
Uninterruptibles. awaitTerminationUninterruptibly(java.util.concurrent.ExecutorService executor)
Invokesexecutor.
awaitTermination(long, TimeUnit)
uninterruptibly with no timeout.static boolean
Uninterruptibles. awaitTerminationUninterruptibly(java.util.concurrent.ExecutorService executor, long timeout, java.util.concurrent.TimeUnit unit)
Invokesexecutor.
awaitTermination(long, TimeUnit)
uninterruptibly.static boolean
Uninterruptibles. awaitTerminationUninterruptibly(java.util.concurrent.ExecutorService executor, java.time.Duration timeout)
Invokesexecutor.
awaitTermination(long, TimeUnit)
uninterruptibly.static void
Uninterruptibles. awaitUninterruptibly(java.util.concurrent.CountDownLatch latch)
Invokeslatch.
await()
uninterruptibly.static boolean
Uninterruptibles. awaitUninterruptibly(java.util.concurrent.CountDownLatch latch, long timeout, java.util.concurrent.TimeUnit unit)
Invokeslatch.
await(timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. awaitUninterruptibly(java.util.concurrent.CountDownLatch latch, java.time.Duration timeout)
Invokeslatch.
await(timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. awaitUninterruptibly(java.util.concurrent.locks.Condition condition, long timeout, java.util.concurrent.TimeUnit unit)
Invokescondition.
await(timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. awaitUninterruptibly(java.util.concurrent.locks.Condition condition, java.time.Duration timeout)
Invokescondition.
await(timeout, unit)
uninterruptibly.<X extends java.lang.Throwable>
FluentFuture<V>FluentFuture. catching(java.lang.Class<X> exceptionType, Function<? super X,? extends V> fallback, java.util.concurrent.Executor executor)
Returns aFuture
whose result is taken from thisFuture
or, if thisFuture
fails with the givenexceptionType
, from the result provided by thefallback
.static <V extends @Nullable java.lang.Object,X extends java.lang.Throwable>
ListenableFuture<V>Futures. catching(ListenableFuture<? extends V> input, java.lang.Class<X> exceptionType, Function<? super X,? extends V> fallback, java.util.concurrent.Executor executor)
Returns aFuture
whose result is taken from the given primaryinput
or, if the primary input fails with the givenexceptionType
, from the result provided by thefallback
.<X extends java.lang.Throwable>
FluentFuture<V>FluentFuture. catchingAsync(java.lang.Class<X> exceptionType, AsyncFunction<? super X,? extends V> fallback, java.util.concurrent.Executor executor)
Returns aFuture
whose result is taken from thisFuture
or, if thisFuture
fails with the givenexceptionType
, from the result provided by thefallback
.static <V extends @Nullable java.lang.Object,X extends java.lang.Throwable>
ListenableFuture<V>Futures. catchingAsync(ListenableFuture<? extends V> input, java.lang.Class<X> exceptionType, AsyncFunction<? super X,? extends V> fallback, java.util.concurrent.Executor executor)
Returns aFuture
whose result is taken from the given primaryinput
or, if the primary input fails with the givenexceptionType
, from the result provided by thefallback
.static <V extends @Nullable java.lang.Object,X extends java.lang.Exception>
VFutures. getChecked(java.util.concurrent.Future<V> future, java.lang.Class<X> exceptionClass)
Returns the result ofFuture.get()
, converting most exceptions to a new instance of the given checked exception type.static <V extends @Nullable java.lang.Object,X extends java.lang.Exception>
VFutures. getChecked(java.util.concurrent.Future<V> future, java.lang.Class<X> exceptionClass, long timeout, java.util.concurrent.TimeUnit unit)
Returns the result ofFuture.get(long, TimeUnit)
, converting most exceptions to a new instance of the given checked exception type.static <V extends @Nullable java.lang.Object,X extends java.lang.Exception>
VFutures. getChecked(java.util.concurrent.Future<V> future, java.lang.Class<X> exceptionClass, java.time.Duration timeout)
Returns the result ofFuture.get(long, TimeUnit)
, converting most exceptions to a new instance of the given checked exception type.static java.util.concurrent.ExecutorService
MoreExecutors. getExitingExecutorService(java.util.concurrent.ThreadPoolExecutor executor)
Converts the given ThreadPoolExecutor into an ExecutorService that exits when the application is complete.static java.util.concurrent.ExecutorService
MoreExecutors. getExitingExecutorService(java.util.concurrent.ThreadPoolExecutor executor, long terminationTimeout, java.util.concurrent.TimeUnit timeUnit)
Converts the given ThreadPoolExecutor into an ExecutorService that exits when the application is complete.static java.util.concurrent.ExecutorService
MoreExecutors. getExitingExecutorService(java.util.concurrent.ThreadPoolExecutor executor, java.time.Duration terminationTimeout)
Converts the given ThreadPoolExecutor into an ExecutorService that exits when the application is complete.static java.util.concurrent.ScheduledExecutorService
MoreExecutors. getExitingScheduledExecutorService(java.util.concurrent.ScheduledThreadPoolExecutor executor)
Converts the given ScheduledThreadPoolExecutor into a ScheduledExecutorService that exits when the application is complete.static java.util.concurrent.ScheduledExecutorService
MoreExecutors. getExitingScheduledExecutorService(java.util.concurrent.ScheduledThreadPoolExecutor executor, long terminationTimeout, java.util.concurrent.TimeUnit timeUnit)
Converts the given ScheduledThreadPoolExecutor into a ScheduledExecutorService that exits when the application is complete.static java.util.concurrent.ScheduledExecutorService
MoreExecutors. getExitingScheduledExecutorService(java.util.concurrent.ScheduledThreadPoolExecutor executor, java.time.Duration terminationTimeout)
Converts the given ScheduledThreadPoolExecutor into a ScheduledExecutorService that exits when the application is complete.static <V extends @Nullable java.lang.Object>
VUninterruptibles. getUninterruptibly(java.util.concurrent.Future<V> future, long timeout, java.util.concurrent.TimeUnit unit)
Invokesfuture.
get(timeout, unit)
uninterruptibly.static <V extends @Nullable java.lang.Object>
VUninterruptibles. getUninterruptibly(java.util.concurrent.Future<V> future, java.time.Duration timeout)
Invokesfuture.
get(timeout, unit)
uninterruptibly.default <T extends @Nullable java.lang.Object>
java.util.List<java.util.concurrent.Future<T>>ListeningExecutorService. invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, java.time.Duration timeout)
Duration-based overload ofListeningExecutorService.invokeAll(Collection, long, TimeUnit)
.default <T extends @Nullable java.lang.Object>
TListeningExecutorService. invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, java.time.Duration timeout)
Duration-based overload ofExecutorService.invokeAny(Collection, long, TimeUnit)
.static void
Uninterruptibles. joinUninterruptibly(java.lang.Thread toJoin)
InvokestoJoin.
join()
uninterruptibly.static void
Uninterruptibles. joinUninterruptibly(java.lang.Thread toJoin, long timeout, java.util.concurrent.TimeUnit unit)
Invokesunit.
timedJoin(toJoin, timeout)
uninterruptibly.static void
Uninterruptibles. joinUninterruptibly(java.lang.Thread toJoin, java.time.Duration timeout)
Invokesunit.
timedJoin(toJoin, timeout)
uninterruptibly.static <I extends @Nullable java.lang.Object,O extends @Nullable java.lang.Object>
java.util.concurrent.Future<O>Futures. lazyTransform(java.util.concurrent.Future<I> input, Function<? super I,? extends O> function)
LikeFutures.transform(ListenableFuture, Function, Executor)
except that the transformationfunction
is invoked on each call toget()
on the returned future.static ListeningExecutorService
MoreExecutors. listeningDecorator(java.util.concurrent.ExecutorService delegate)
Creates anExecutorService
whosesubmit
andinvokeAll
methods submitListenableFutureTask
instances to the given delegate executor.static ListeningScheduledExecutorService
MoreExecutors. listeningDecorator(java.util.concurrent.ScheduledExecutorService delegate)
Creates aScheduledExecutorService
whosesubmit
andinvokeAll
methods submitListenableFutureTask
instances to the given delegate executor.static ListeningExecutorService
MoreExecutors. newDirectExecutorService()
Creates an executor service that runs each task in the thread that invokesexecute/submit
, as inThreadPoolExecutor.CallerRunsPolicy
.static java.util.concurrent.Executor
MoreExecutors. newSequentialExecutor(java.util.concurrent.Executor delegate)
Returns anExecutor
that runs each task executed sequentially, such that no two tasks are running concurrently.static java.util.concurrent.ThreadFactory
MoreExecutors. platformThreadFactory()
Returns a default thread factory used to create new threads.static <E> void
Uninterruptibles. putUninterruptibly(java.util.concurrent.BlockingQueue<E> queue, E element)
Invokesqueue.
put(element)
uninterruptibly.static <O extends @Nullable java.lang.Object>
ListenableFuture<O>Futures. scheduleAsync(AsyncCallable<O> callable, long delay, java.util.concurrent.TimeUnit timeUnit, java.util.concurrent.ScheduledExecutorService executorService)
Schedulescallable
on the specifiedexecutor
, returning aFuture
.static <O extends @Nullable java.lang.Object>
ListenableFuture<O>Futures. scheduleAsync(AsyncCallable<O> callable, java.time.Duration delay, java.util.concurrent.ScheduledExecutorService executorService)
Schedulescallable
on the specifiedexecutor
, returning aFuture
.static boolean
MoreExecutors. shutdownAndAwaitTermination(java.util.concurrent.ExecutorService service, long timeout, java.util.concurrent.TimeUnit unit)
Shuts down the given executor service gradually, first disabling new submissions and later, if necessary, cancelling remaining tasks.static boolean
MoreExecutors. shutdownAndAwaitTermination(java.util.concurrent.ExecutorService service, java.time.Duration timeout)
Shuts down the given executor service gradually, first disabling new submissions and later, if necessary, cancelling remaining tasks.static void
Uninterruptibles. sleepUninterruptibly(long sleepFor, java.util.concurrent.TimeUnit unit)
Invokesunit.
sleep(sleepFor)
uninterruptibly.static void
Uninterruptibles. sleepUninterruptibly(java.time.Duration sleepFor)
Invokesunit.
sleep(sleepFor)
uninterruptibly.static <E> E
Uninterruptibles. takeUninterruptibly(java.util.concurrent.BlockingQueue<E> queue)
Invokesqueue.
take()
uninterruptibly.static boolean
Uninterruptibles. tryAcquireUninterruptibly(java.util.concurrent.Semaphore semaphore, int permits, long timeout, java.util.concurrent.TimeUnit unit)
Invokessemaphore.
tryAcquire(permits, timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. tryAcquireUninterruptibly(java.util.concurrent.Semaphore semaphore, int permits, java.time.Duration timeout)
Invokessemaphore.
tryAcquire(permits, timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. tryAcquireUninterruptibly(java.util.concurrent.Semaphore semaphore, long timeout, java.util.concurrent.TimeUnit unit)
Invokessemaphore.
tryAcquire(1, timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. tryAcquireUninterruptibly(java.util.concurrent.Semaphore semaphore, java.time.Duration timeout)
Invokessemaphore.
tryAcquire(1, timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. tryLockUninterruptibly(java.util.concurrent.locks.Lock lock, long timeout, java.util.concurrent.TimeUnit unit)
Invokeslock.
tryLock(timeout, unit)
uninterruptibly.static boolean
Uninterruptibles. tryLockUninterruptibly(java.util.concurrent.locks.Lock lock, java.time.Duration timeout)
Invokeslock.
tryLock(timeout, unit)
uninterruptibly.FluentFuture<V>
FluentFuture. withTimeout(long timeout, java.util.concurrent.TimeUnit unit, java.util.concurrent.ScheduledExecutorService scheduledExecutor)
Returns a future that delegates to this future but will finish early (via aTimeoutException
wrapped in anExecutionException
) if the specified timeout expires.FluentFuture<V>
FluentFuture. withTimeout(java.time.Duration timeout, java.util.concurrent.ScheduledExecutorService scheduledExecutor)
Returns a future that delegates to this future but will finish early (via aTimeoutException
wrapped in anExecutionException
) if the specified timeout expires.static <V extends @Nullable java.lang.Object>
ListenableFuture<V>Futures. withTimeout(ListenableFuture<V> delegate, long time, java.util.concurrent.TimeUnit unit, java.util.concurrent.ScheduledExecutorService scheduledExecutor)
Returns a future that delegates to another but will finish early (via aTimeoutException
wrapped in anExecutionException
) if the specified duration expires.static <V extends @Nullable java.lang.Object>
ListenableFuture<V>Futures. withTimeout(ListenableFuture<V> delegate, java.time.Duration time, java.util.concurrent.ScheduledExecutorService scheduledExecutor)
Returns a future that delegates to another but will finish early (via aTimeoutException
wrapped in anExecutionException
) if the specified duration expires.
-