com.google.web.bindery.requestfactory.server
Class SimpleRequestProcessor.IdToEntityMap
java.lang.Object
java.util.AbstractMap<K,V>
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:
- java.io.Serializable, java.lang.Cloneable, java.util.Map<com.google.web.bindery.requestfactory.shared.impl.SimpleProxyId<?>,AutoBean<? extends BaseProxy>>
- Enclosing class:
- SimpleRequestProcessor
static class SimpleRequestProcessor.IdToEntityMap
- extends java.util.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 classes/interfaces inherited from class java.util.AbstractMap |
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V> |
Methods inherited from class java.util.HashMap |
clear, clone, containsKey, containsValue, entrySet, get, isEmpty, keySet, put, putAll, remove, size, values |
Methods inherited from class java.util.AbstractMap |
equals, hashCode, toString |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Map |
equals, hashCode |
SimpleRequestProcessor.IdToEntityMap
SimpleRequestProcessor.IdToEntityMap()