class FreshValueGenerator
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private static interface |
FreshValueGenerator.Empty
Annotates a method to generate the "empty" instance of a collection.
|
private class |
FreshValueGenerator.FreshInvocationHandler |
private static interface |
FreshValueGenerator.Generates
Annotates a method to be the instance generator of a certain type.
|
Modifier and Type | Field and Description |
---|---|
private static ImmutableMap<java.lang.Class<?>,java.lang.reflect.Method> |
EMPTY_GENERATORS |
private java.util.Map<java.lang.reflect.Type,java.lang.Integer> |
emptyInstanceGenerated
The freshness level at which the
@Empty annotated method was invoked to generate
instance. |
private java.util.concurrent.atomic.AtomicInteger |
freshness |
private static ImmutableMap<java.lang.Class<?>,java.lang.reflect.Method> |
GENERATORS |
private ListMultimap<java.lang.Class<?>,java.lang.Object> |
sampleInstances |
Constructor and Description |
---|
FreshValueGenerator() |
Modifier and Type | Method and Description |
---|---|
(package private) <T> void |
addSampleInstances(java.lang.Class<T> type,
java.lang.Iterable<? extends T> instances) |
private <T> T |
defaultGenerate(java.lang.Class<T> rawType) |
private java.lang.Object |
generate(TypeToken<?> type)
Generates an instance for
type using the current freshness . |
(package private) static <E> java.util.ArrayList<E> |
generateArrayList(E freshElement) |
(package private) static <K,V> ArrayListMultimap<K,V> |
generateArrayListMultimap(K key,
V value) |
(package private) java.math.BigDecimal |
generateBigDecimal() |
(package private) java.math.BigInteger |
generateBigInteger() |
(package private) static <K,V> BiMap<K,V> |
generateBimap(K key,
V value) |
(package private) boolean |
generateBoolean() |
(package private) java.lang.Boolean |
generateBooleanObject() |
(package private) java.nio.Buffer |
generateBuffer() |
(package private) byte |
generateByte() |
(package private) static java.io.ByteArrayInputStream |
generateByteArrayInputStream() |
(package private) java.nio.ByteBuffer |
generateByteBuffer() |
(package private) java.lang.Byte |
generateByteObject() |
(package private) char |
generateChar() |
(package private) java.lang.Character |
generateCharacter() |
(package private) java.nio.CharBuffer |
generateCharBuffer() |
(package private) CharMatcher |
generateCharMatcher() |
(package private) java.lang.CharSequence |
generateCharSequence() |
(package private) java.nio.charset.Charset |
generateCharset() |
(package private) java.lang.Class<?> |
generateClass() |
(package private) static <E> java.util.Collection<E> |
generateCollection(E freshElement) |
(package private) java.lang.Comparable<?> |
generateComparable() |
(package private) <T> java.util.Comparator<T> |
generateComparator() |
(package private) static <K,V> java.util.concurrent.ConcurrentMap<K,V> |
generateConcurrentMap() |
(package private) static <K,V> java.util.concurrent.ConcurrentMap<K,V> |
generateConcurrentMap(K key,
V value) |
(package private) java.util.Currency |
generateCurrency() |
(package private) double |
generateDouble() |
(package private) java.nio.DoubleBuffer |
generateDoubleBuffer() |
(package private) java.lang.Double |
generateDoubleObject() |
(package private) <T> Equivalence<T> |
generateEquivalence() |
(package private) java.io.File |
generateFile() |
(package private) float |
generateFloat() |
(package private) java.nio.FloatBuffer |
generateFloatBuffer() |
(package private) java.lang.Float |
generateFloatObject() |
(package private) <T> T |
generateFresh(java.lang.Class<T> type) |
(package private) java.lang.Object |
generateFresh(TypeToken<?> type)
Returns a fresh instance for
type if possible. |
(package private) <T> Optional<T> |
generateGoogleOptional() |
(package private) <T> Optional<T> |
generateGoogleOptional(T value) |
(package private) static <R,C,V> HashBasedTable<R,C,V> |
generateHashBasedTable(R row,
C column,
V value) |
(package private) static <K,V> HashBiMap<K,V> |
generateHashBiMap(K key,
V value) |
(package private) static <K,V> java.util.HashMap<K,V> |
generateHashdMap(K key,
V value) |
(package private) static <K,V> HashMultimap<K,V> |
generateHashMultimap(K key,
V value) |
(package private) static <E> HashMultiset<E> |
generateHashMultiset(E freshElement) |
(package private) static <E> java.util.HashSet<E> |
generateHashSet(E freshElement) |
(package private) static <K,V> ImmutableBiMap<K,V> |
generateImmutableBimap(K key,
V value) |
(package private) static <E> ImmutableCollection<E> |
generateImmutableCollection(E freshElement) |
(package private) static <E> ImmutableList<E> |
generateImmutableList(E freshElement) |
(package private) static <K,V> ImmutableListMultimap<K,V> |
generateImmutableListMultimap(K key,
V value) |
(package private) static <K,V> ImmutableMap<K,V> |
generateImmutableMap(K key,
V value) |
(package private) static <K,V> ImmutableMultimap<K,V> |
generateImmutableMultimap(K key,
V value) |
(package private) static <E> ImmutableMultiset<E> |
generateImmutableMultiset(E freshElement) |
(package private) static <E> ImmutableSet<E> |
generateImmutableSet(E freshElement) |
(package private) static <K,V> ImmutableSetMultimap<K,V> |
generateImmutableSetMultimap(K key,
V value) |
(package private) static <K extends java.lang.Comparable<? super K>,V> |
generateImmutableSortedMap(K key,
V value) |
(package private) static <E extends java.lang.Comparable<E>> |
generateImmutableSortedMultiset(E freshElement) |
(package private) static <E extends java.lang.Comparable<? super E>> |
generateImmutableSortedSet(E freshElement) |
(package private) static <R,C,V> ImmutableTable<R,C,V> |
generateImmutableTable(R row,
C column,
V value) |
(package private) static java.io.InputStream |
generateInputStream() |
(package private) int |
generateInt() |
(package private) java.nio.IntBuffer |
generateIntBuffer() |
(package private) java.lang.Integer |
generateInteger() |
(package private) static <E> java.lang.Iterable<E> |
generateIterable(E freshElement) |
(package private) <T> java.util.Optional<T> |
generateJavaOptional() |
(package private) <T> java.util.Optional<T> |
generateJavaOptional(T value) |
(package private) Joiner |
generateJoiner() |
(package private) static <K,V> java.util.LinkedHashMap<K,V> |
generateLinkedHashMap(K key,
V value) |
(package private) static <K,V> LinkedHashMultimap<K,V> |
generateLinkedHashMultimap(K key,
V value) |
(package private) static <E> LinkedHashMultiset<E> |
generateLinkedHashMultiset(E freshElement) |
(package private) static <E> java.util.LinkedHashSet<E> |
generateLinkedHashSet(E freshElement) |
(package private) static <E> java.util.LinkedList<E> |
generateLinkedList(E freshElement) |
(package private) static <E> java.util.List<E> |
generateList(E freshElement) |
(package private) static <K,V> ListMultimap<K,V> |
generateListMultimap(K key,
V value) |
(package private) java.util.Locale |
generateLocale() |
(package private) long |
generateLong() |
(package private) java.nio.LongBuffer |
generateLongBuffer() |
(package private) java.lang.Long |
generateLongObject() |
(package private) static <K,V> java.util.Map<K,V> |
generateMap(K key,
V value) |
(package private) static <K,V> Multimap<K,V> |
generateMultimap(K key,
V value) |
(package private) static <E> Multiset<E> |
generateMultiset(E freshElement) |
(package private) static <K extends java.lang.Comparable<? super K>,V> |
generateNavigableMap(K key,
V value) |
(package private) static <E extends java.lang.Comparable<? super E>> |
generateNavigableSet(E freshElement) |
(package private) java.lang.Number |
generateNumber() |
(package private) java.lang.Object |
generateObject() |
(package private) java.util.OptionalDouble |
generateOptionalDouble() |
(package private) java.util.OptionalInt |
generateOptionalInt() |
(package private) java.util.OptionalLong |
generateOptionalLong() |
(package private) <T> Ordering<T> |
generateOrdering() |
(package private) java.util.regex.Pattern |
generatePattern() |
(package private) static <C extends java.lang.Comparable<?>> |
generateRange() |
(package private) static <C extends java.lang.Comparable<?>> |
generateRange(C freshElement) |
(package private) java.lang.Readable |
generateReadable() |
(package private) java.io.Reader |
generateReader() |
(package private) static <R extends java.lang.Comparable,C extends java.lang.Comparable,V> |
generateRowSortedTable(R row,
C column,
V value) |
(package private) static <E> java.util.Set<E> |
generateSet(E freshElement) |
(package private) static <K,V> SetMultimap<K,V> |
generateSetMultimap(K key,
V value) |
(package private) short |
generateShort() |
(package private) java.nio.ShortBuffer |
generateShortBuffer() |
(package private) java.lang.Short |
generateShortObject() |
(package private) static <K extends java.lang.Comparable<? super K>,V> |
generateSortedMap(K key,
V value) |
(package private) static <E extends java.lang.Comparable<E>> |
generateSortedMultiset(E freshElement) |
(package private) static <E extends java.lang.Comparable<? super E>> |
generateSortedSet(E freshElement) |
(package private) Splitter |
generateSplitter() |
(package private) java.lang.String |
generateString() |
(package private) java.io.StringReader |
generateStringReader() |
(package private) static <R,C,V> Table<R,C,V> |
generateTable(R row,
C column,
V value) |
(package private) Ticker |
generateTicker() |
(package private) static <R extends java.lang.Comparable,C extends java.lang.Comparable,V> |
generateTreeBasedTable(R row,
C column,
V value) |
(package private) static <K extends java.lang.Comparable<? super K>,V> |
generateTreeMap(K key,
V value) |
(package private) static <E extends java.lang.Comparable<E>> |
generateTreeMultiset(E freshElement) |
(package private) static <E extends java.lang.Comparable<? super E>> |
generateTreeSet(E freshElement) |
(package private) TypeToken<?> |
generateTypeToken() |
(package private) UnsignedInteger |
generateUnsignedInteger() |
(package private) UnsignedLong |
generateUnsignedLong() |
(package private) java.lang.Object |
interfaceMethodCalled(java.lang.Class<?> interfaceType,
java.lang.reflect.Method method)
Subclasses can override to provide different return value for proxied interface methods.
|
private java.lang.Object |
invokeGeneratorMethod(java.lang.reflect.Method generator,
java.lang.Object... args) |
(package private) <T> T |
newFreshProxy(java.lang.Class<T> interfaceType) |
private <T> T |
newProxy(java.lang.Class<T> interfaceType) |
private static java.lang.String |
paramString(java.lang.Class<?> type,
int i) |
private <T> T |
pickInstance(java.util.Collection<T> instances,
T defaultValue) |
private <T> T |
pickInstance(T[] instances,
T defaultValue) |
private java.util.Currency |
preJava7FreshCurrency() |
private static final ImmutableMap<java.lang.Class<?>,java.lang.reflect.Method> GENERATORS
private static final ImmutableMap<java.lang.Class<?>,java.lang.reflect.Method> EMPTY_GENERATORS
private final java.util.concurrent.atomic.AtomicInteger freshness
private final ListMultimap<java.lang.Class<?>,java.lang.Object> sampleInstances
private final java.util.Map<java.lang.reflect.Type,java.lang.Integer> emptyInstanceGenerated
@Empty
annotated method was invoked to generate
instance.final <T> void addSampleInstances(java.lang.Class<T> type, java.lang.Iterable<? extends T> instances)
final java.lang.Object generateFresh(TypeToken<?> type)
type
if possible. The returned instance could be:
ImmutableList<String>
;
final <T> T generateFresh(java.lang.Class<T> type)
final <T> T newFreshProxy(java.lang.Class<T> interfaceType)
private java.lang.Object generate(TypeToken<?> type)
type
using the current freshness
. The generated
instance may or may not be unique across different calls.private <T> T defaultGenerate(java.lang.Class<T> rawType)
private <T> T newProxy(java.lang.Class<T> interfaceType)
private java.lang.Object invokeGeneratorMethod(java.lang.reflect.Method generator, java.lang.Object... args)
java.lang.Object interfaceMethodCalled(java.lang.Class<?> interfaceType, java.lang.reflect.Method method)
private <T> T pickInstance(T[] instances, T defaultValue)
private <T> T pickInstance(java.util.Collection<T> instances, T defaultValue)
private static java.lang.String paramString(java.lang.Class<?> type, int i)
java.lang.Class<?> generateClass()
java.lang.Object generateObject()
java.lang.Number generateNumber()
int generateInt()
java.lang.Integer generateInteger()
long generateLong()
java.lang.Long generateLongObject()
float generateFloat()
java.lang.Float generateFloatObject()
double generateDouble()
java.lang.Double generateDoubleObject()
short generateShort()
java.lang.Short generateShortObject()
byte generateByte()
java.lang.Byte generateByteObject()
char generateChar()
java.lang.Character generateCharacter()
boolean generateBoolean()
java.lang.Boolean generateBooleanObject()
UnsignedInteger generateUnsignedInteger()
UnsignedLong generateUnsignedLong()
java.math.BigInteger generateBigInteger()
java.math.BigDecimal generateBigDecimal()
java.lang.CharSequence generateCharSequence()
java.lang.String generateString()
java.lang.Comparable<?> generateComparable()
java.util.regex.Pattern generatePattern()
java.nio.charset.Charset generateCharset()
java.util.Locale generateLocale()
java.util.Currency generateCurrency()
private java.util.Currency preJava7FreshCurrency()
<T> java.util.Optional<T> generateJavaOptional()
<T> java.util.Optional<T> generateJavaOptional(T value)
java.util.OptionalInt generateOptionalInt()
java.util.OptionalLong generateOptionalLong()
java.util.OptionalDouble generateOptionalDouble()
<T> Optional<T> generateGoogleOptional()
<T> Optional<T> generateGoogleOptional(T value)
Joiner generateJoiner()
Splitter generateSplitter()
<T> Equivalence<T> generateEquivalence()
CharMatcher generateCharMatcher()
Ticker generateTicker()
<T> java.util.Comparator<T> generateComparator()
<T> Ordering<T> generateOrdering()
static <C extends java.lang.Comparable<?>> Range<C> generateRange()
static <C extends java.lang.Comparable<?>> Range<C> generateRange(C freshElement)
static <E> java.lang.Iterable<E> generateIterable(E freshElement)
static <E> java.util.Collection<E> generateCollection(E freshElement)
static <E> java.util.List<E> generateList(E freshElement)
static <E> java.util.ArrayList<E> generateArrayList(E freshElement)
static <E> java.util.LinkedList<E> generateLinkedList(E freshElement)
static <E> ImmutableList<E> generateImmutableList(E freshElement)
static <E> ImmutableCollection<E> generateImmutableCollection(E freshElement)
static <E> java.util.Set<E> generateSet(E freshElement)
static <E> java.util.HashSet<E> generateHashSet(E freshElement)
static <E> java.util.LinkedHashSet<E> generateLinkedHashSet(E freshElement)
static <E> ImmutableSet<E> generateImmutableSet(E freshElement)
static <E extends java.lang.Comparable<? super E>> java.util.SortedSet<E> generateSortedSet(E freshElement)
static <E extends java.lang.Comparable<? super E>> java.util.NavigableSet<E> generateNavigableSet(E freshElement)
static <E extends java.lang.Comparable<? super E>> java.util.TreeSet<E> generateTreeSet(E freshElement)
static <E extends java.lang.Comparable<? super E>> ImmutableSortedSet<E> generateImmutableSortedSet(E freshElement)
static <E> Multiset<E> generateMultiset(E freshElement)
static <E> HashMultiset<E> generateHashMultiset(E freshElement)
static <E> LinkedHashMultiset<E> generateLinkedHashMultiset(E freshElement)
static <E> ImmutableMultiset<E> generateImmutableMultiset(E freshElement)
static <E extends java.lang.Comparable<E>> SortedMultiset<E> generateSortedMultiset(E freshElement)
static <E extends java.lang.Comparable<E>> TreeMultiset<E> generateTreeMultiset(E freshElement)
static <E extends java.lang.Comparable<E>> ImmutableSortedMultiset<E> generateImmutableSortedMultiset(E freshElement)
static <K,V> java.util.Map<K,V> generateMap(K key, V value)
static <K,V> java.util.HashMap<K,V> generateHashdMap(K key, V value)
static <K,V> java.util.LinkedHashMap<K,V> generateLinkedHashMap(K key, V value)
static <K,V> ImmutableMap<K,V> generateImmutableMap(K key, V value)
static <K,V> java.util.concurrent.ConcurrentMap<K,V> generateConcurrentMap()
static <K,V> java.util.concurrent.ConcurrentMap<K,V> generateConcurrentMap(K key, V value)
static <K extends java.lang.Comparable<? super K>,V> java.util.SortedMap<K,V> generateSortedMap(K key, V value)
static <K extends java.lang.Comparable<? super K>,V> java.util.NavigableMap<K,V> generateNavigableMap(K key, V value)
static <K extends java.lang.Comparable<? super K>,V> java.util.TreeMap<K,V> generateTreeMap(K key, V value)
static <K extends java.lang.Comparable<? super K>,V> ImmutableSortedMap<K,V> generateImmutableSortedMap(K key, V value)
static <K,V> Multimap<K,V> generateMultimap(K key, V value)
static <K,V> ImmutableMultimap<K,V> generateImmutableMultimap(K key, V value)
static <K,V> ListMultimap<K,V> generateListMultimap(K key, V value)
static <K,V> ArrayListMultimap<K,V> generateArrayListMultimap(K key, V value)
static <K,V> ImmutableListMultimap<K,V> generateImmutableListMultimap(K key, V value)
static <K,V> SetMultimap<K,V> generateSetMultimap(K key, V value)
static <K,V> HashMultimap<K,V> generateHashMultimap(K key, V value)
static <K,V> LinkedHashMultimap<K,V> generateLinkedHashMultimap(K key, V value)
static <K,V> ImmutableSetMultimap<K,V> generateImmutableSetMultimap(K key, V value)
static <K,V> BiMap<K,V> generateBimap(K key, V value)
static <K,V> HashBiMap<K,V> generateHashBiMap(K key, V value)
static <K,V> ImmutableBiMap<K,V> generateImmutableBimap(K key, V value)
static <R,C,V> Table<R,C,V> generateTable(R row, C column, V value)
static <R,C,V> HashBasedTable<R,C,V> generateHashBasedTable(R row, C column, V value)
static <R extends java.lang.Comparable,C extends java.lang.Comparable,V> RowSortedTable<R,C,V> generateRowSortedTable(R row, C column, V value)
static <R extends java.lang.Comparable,C extends java.lang.Comparable,V> TreeBasedTable<R,C,V> generateTreeBasedTable(R row, C column, V value)
static <R,C,V> ImmutableTable<R,C,V> generateImmutableTable(R row, C column, V value)
TypeToken<?> generateTypeToken()
java.io.File generateFile()
static java.io.ByteArrayInputStream generateByteArrayInputStream()
static java.io.InputStream generateInputStream()
java.io.StringReader generateStringReader()
java.io.Reader generateReader()
java.lang.Readable generateReadable()
java.nio.Buffer generateBuffer()
java.nio.CharBuffer generateCharBuffer()
java.nio.ByteBuffer generateByteBuffer()
java.nio.ShortBuffer generateShortBuffer()
java.nio.IntBuffer generateIntBuffer()
java.nio.LongBuffer generateLongBuffer()
java.nio.FloatBuffer generateFloatBuffer()
java.nio.DoubleBuffer generateDoubleBuffer()