Package com.google.common.collect
Class Serialization
- java.lang.Object
-
- com.google.common.collect.Serialization
-
final class Serialization extends java.lang.Object
Provides static methods for serializing collection classes.This class assists the implementation of collection classes. Do not use this class to serialize collections that are defined elsewhere.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
Serialization.FieldSetter<T>
-
Constructor Summary
Constructors Modifier Constructor Description private
Serialization()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static <T> Serialization.FieldSetter<T>
getFieldSetter(java.lang.Class<T> clazz, java.lang.String fieldName)
(package private) static <K,V>
voidpopulateMap(java.util.Map<K,V> map, java.io.ObjectInputStream stream)
Populates a map by reading an input stream, as part of deserialization.(package private) static <K,V>
voidpopulateMap(java.util.Map<K,V> map, java.io.ObjectInputStream stream, int size)
Populates a map by reading an input stream, as part of deserialization.(package private) static <K,V>
voidpopulateMultimap(Multimap<K,V> multimap, java.io.ObjectInputStream stream)
Populates a multimap by reading an input stream, as part of deserialization.(package private) static <K,V>
voidpopulateMultimap(Multimap<K,V> multimap, java.io.ObjectInputStream stream, int distinctKeys)
Populates a multimap by reading an input stream, as part of deserialization.(package private) static <E> void
populateMultiset(Multiset<E> multiset, java.io.ObjectInputStream stream)
Populates a multiset by reading an input stream, as part of deserialization.(package private) static <E> void
populateMultiset(Multiset<E> multiset, java.io.ObjectInputStream stream, int distinctElements)
Populates a multiset by reading an input stream, as part of deserialization.(package private) static int
readCount(java.io.ObjectInputStream stream)
Reads a count corresponding to a serialized map, multiset, or multimap.(package private) static <K,V>
voidwriteMap(java.util.Map<K,V> map, java.io.ObjectOutputStream stream)
Stores the contents of a map in an output stream, as part of serialization.(package private) static <K,V>
voidwriteMultimap(Multimap<K,V> multimap, java.io.ObjectOutputStream stream)
Stores the contents of a multimap in an output stream, as part of serialization.(package private) static <E> void
writeMultiset(Multiset<E> multiset, java.io.ObjectOutputStream stream)
Stores the contents of a multiset in an output stream, as part of serialization.
-
-
-
Method Detail
-
readCount
static int readCount(java.io.ObjectInputStream stream) throws java.io.IOException
Reads a count corresponding to a serialized map, multiset, or multimap. It returns the size of a map serialized bywriteMap(Map, ObjectOutputStream)
, the number of distinct elements in a multiset serialized bywriteMultiset(Multiset, ObjectOutputStream)
, or the number of distinct keys in a multimap serialized bywriteMultimap(Multimap, ObjectOutputStream)
.- Throws:
java.io.IOException
-
writeMap
static <K,V> void writeMap(java.util.Map<K,V> map, java.io.ObjectOutputStream stream) throws java.io.IOException
Stores the contents of a map in an output stream, as part of serialization. It does not support concurrent maps whose content may change while the method is running.The serialized output consists of the number of entries, first key, first value, second key, second value, and so on.
- Throws:
java.io.IOException
-
populateMap
static <K,V> void populateMap(java.util.Map<K,V> map, java.io.ObjectInputStream stream) throws java.io.IOException, java.lang.ClassNotFoundException
Populates a map by reading an input stream, as part of deserialization. SeewriteMap(java.util.Map<K, V>, java.io.ObjectOutputStream)
for the data format.- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
populateMap
static <K,V> void populateMap(java.util.Map<K,V> map, java.io.ObjectInputStream stream, int size) throws java.io.IOException, java.lang.ClassNotFoundException
Populates a map by reading an input stream, as part of deserialization. SeewriteMap(java.util.Map<K, V>, java.io.ObjectOutputStream)
for the data format. The size is determined by a prior call toreadCount(java.io.ObjectInputStream)
.- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
writeMultiset
static <E> void writeMultiset(Multiset<E> multiset, java.io.ObjectOutputStream stream) throws java.io.IOException
Stores the contents of a multiset in an output stream, as part of serialization. It does not support concurrent multisets whose content may change while the method is running.The serialized output consists of the number of distinct elements, the first element, its count, the second element, its count, and so on.
- Throws:
java.io.IOException
-
populateMultiset
static <E> void populateMultiset(Multiset<E> multiset, java.io.ObjectInputStream stream) throws java.io.IOException, java.lang.ClassNotFoundException
Populates a multiset by reading an input stream, as part of deserialization. SeewriteMultiset(com.google.common.collect.Multiset<E>, java.io.ObjectOutputStream)
for the data format.- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
populateMultiset
static <E> void populateMultiset(Multiset<E> multiset, java.io.ObjectInputStream stream, int distinctElements) throws java.io.IOException, java.lang.ClassNotFoundException
Populates a multiset by reading an input stream, as part of deserialization. SeewriteMultiset(com.google.common.collect.Multiset<E>, java.io.ObjectOutputStream)
for the data format. The number of distinct elements is determined by a prior call toreadCount(java.io.ObjectInputStream)
.- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
writeMultimap
static <K,V> void writeMultimap(Multimap<K,V> multimap, java.io.ObjectOutputStream stream) throws java.io.IOException
Stores the contents of a multimap in an output stream, as part of serialization. It does not support concurrent multimaps whose content may change while the method is running. TheMultimap.asMap()
view determines the ordering in which data is written to the stream.The serialized output consists of the number of distinct keys, and then for each distinct key: the key, the number of values for that key, and the key's values.
- Throws:
java.io.IOException
-
populateMultimap
static <K,V> void populateMultimap(Multimap<K,V> multimap, java.io.ObjectInputStream stream) throws java.io.IOException, java.lang.ClassNotFoundException
Populates a multimap by reading an input stream, as part of deserialization. SeewriteMultimap(com.google.common.collect.Multimap<K, V>, java.io.ObjectOutputStream)
for the data format.- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
populateMultimap
static <K,V> void populateMultimap(Multimap<K,V> multimap, java.io.ObjectInputStream stream, int distinctKeys) throws java.io.IOException, java.lang.ClassNotFoundException
Populates a multimap by reading an input stream, as part of deserialization. SeewriteMultimap(com.google.common.collect.Multimap<K, V>, java.io.ObjectOutputStream)
for the data format. The number of distinct keys is determined by a prior call toreadCount(java.io.ObjectInputStream)
.- Throws:
java.io.IOException
java.lang.ClassNotFoundException
-
getFieldSetter
static <T> Serialization.FieldSetter<T> getFieldSetter(java.lang.Class<T> clazz, java.lang.String fieldName)
-
-