Classes | |
interface | Converter |
class | ImmutableMessageConverter |
class | MutatabilityAwareMap |
enum | StorageMode |
Public Member Functions | |
void | clear () |
MapField< K, V > | copy () |
void | ensureMutable () |
boolean | equals (Object object) |
Map< K, V > | getMap () |
Map< K, V > | getMutableMap () |
int | hashCode () |
boolean | isMutable () |
void | makeImmutable () |
void | mergeFrom (MapField< K, V > other) |
Static Public Member Functions | |
static< K, V > MapField< K, V > | emptyMapField (MapEntry< K, V > defaultEntry) |
static< K, V > MapField< K, V > | newMapField (MapEntry< K, V > defaultEntry) |
Private Member Functions | |
Message | convertKeyAndValueToMessage (K key, V value) |
MutatabilityAwareMap< K, V > | convertListToMap (List< Message > listData) |
List< Message > | convertMapToList (MutatabilityAwareMap< K, V > mapData) |
void | convertMessageToKeyAndValue (Message message, Map< K, V > map) |
MapField (Converter< K, V > converter, StorageMode mode, Map< K, V > mapData) | |
MapField (MapEntry< K, V > defaultEntry, StorageMode mode, Map< K, V > mapData) | |
Private Attributes | |
final Converter< K, V > | converter |
volatile boolean | isMutable |
List< Message > | listData |
MutatabilityAwareMap< K, V > | mapData |
volatile StorageMode | mode |
Internal representation of map fields in generated messages.
This class supports accessing the map field as a Map to be used in generated API and also supports accessing the field as a List to be used in reflection API. It keeps track of where the data is currently stored and do necessary conversions between map and list.
This class is a protobuf implementation detail. Users shouldn't use this class directly.
THREAD-SAFETY NOTE: Read-only access is thread-safe. Users can call getMap() and getList() concurrently in multiple threads. If write-access is needed, all access must be synchronized.
Definition at line 56 of file MapField.java.
|
inlineprivate |
Definition at line 128 of file MapField.java.
|
inlineprivate |
Definition at line 136 of file MapField.java.
|
inline |
Definition at line 207 of file MapField.java.
|
inlineprivate |
Definition at line 153 of file MapField.java.
|
inlineprivate |
Definition at line 170 of file MapField.java.
|
inlineprivate |
Definition at line 162 of file MapField.java.
|
inlineprivate |
Definition at line 158 of file MapField.java.
|
inline |
Returns a deep copy of this MapField.
Definition at line 228 of file MapField.java.
|
inlinestatic |
Returns an immutable empty MapField.
Definition at line 142 of file MapField.java.
|
inline |
Definition at line 279 of file MapField.java.
|
inline |
Definition at line 214 of file MapField.java.
|
inline |
Returns the content of this MapField as a read-only Map.
Definition at line 179 of file MapField.java.
|
inline |
Gets a mutable Map view of this MapField.
Definition at line 192 of file MapField.java.
|
inline |
Definition at line 223 of file MapField.java.
|
inline |
Returns whether this field can be modified.
Definition at line 271 of file MapField.java.
|
inline |
Makes this list immutable. All subsequent modifications will throw an {}.
Definition at line 266 of file MapField.java.
|
inline |
Definition at line 203 of file MapField.java.
|
inlinestatic |
Creates a new mutable empty MapField.
Definition at line 148 of file MapField.java.
|
private |
Definition at line 126 of file MapField.java.
|
private |
Definition at line 86 of file MapField.java.
|
private |
Definition at line 89 of file MapField.java.
|
private |
Definition at line 88 of file MapField.java.
|
private |
Definition at line 87 of file MapField.java.