Class SimpleRequestProcessor.IdToEntityMap
java.lang.Object
java.util.AbstractMap<com.google.web.bindery.requestfactory.shared.impl.SimpleProxyId<?>,AutoBean<? extends BaseProxy>>
java.util.HashMap<com.google.web.bindery.requestfactory.shared.impl.SimpleProxyId<?>,AutoBean<? extends BaseProxy>>
com.google.web.bindery.requestfactory.server.SimpleRequestProcessor.IdToEntityMap
- All Implemented Interfaces:
Serializable
,Cloneable
,Map<com.google.web.bindery.requestfactory.shared.impl.SimpleProxyId<?>,
AutoBean<? extends BaseProxy>>
- Enclosing class:
SimpleRequestProcessor
static class SimpleRequestProcessor.IdToEntityMap
extends HashMap<com.google.web.bindery.requestfactory.shared.impl.SimpleProxyId<?>,AutoBean<? extends BaseProxy>>
This parameterization is so long, it improves readability to have a
specific type.
FIXME: IDs used as keys in this map can be mutated (turning an ephemeral ID to a persisted ID in Resolver#resolveClientProxy) in a way that can change their hashCode value and equals behavior, therefore breaking the Map contract. We should find a way to only put immutable IDs here, or change SimpleProxyId so that its hashCode value and equals behavior don't change, or possibly remove and re-add the entry when the ID is modified (as this is something entirely under our control).
-
Nested Class Summary
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K,
V>, AbstractMap.SimpleImmutableEntry<K, V> -
Constructor Summary
-
Method Summary
Methods inherited from class java.util.HashMap
clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, forEach, get, getOrDefault, isEmpty, keySet, merge, newHashMap, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values
Methods inherited from class java.util.AbstractMap
equals, hashCode, toString
-
Constructor Details
-
IdToEntityMap
IdToEntityMap()
-