Package com.google.gwt.user.server.rpc

## Class EnumMap<K extends java.lang.Enum<K>,​V>

- java.lang.Object
- - java.util.AbstractMap<K,​V>
  - - java.util.EnumMap<K,​V>
    - - com.google.gwt.user.server.rpc.EnumMap<K,​V>

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`, `java.util.Map<K,​V>`

      class EnumMap<K extends java.lang.Enum<K>,​V>
      extends java.util.EnumMap<K,​V>

  A serialization-compatible mock for `EnumMap` that uses an equal `serialVersionUID` and a compatible set of fields. When de-serializing an `EnumMap` instance into an instance of this class, e.g., by overriding `ObjectInputStream`'s `ObjectInputStream#resolveClass` method such that it delivers this class instead of `EnumMap`, the fields are made accessible through getters; in particular, `getKeyType()` reveals the original `EnumMap`'s key type, even if the map is empty.

  The `EnumMap#getEnumMapKeyType(java.util.EnumMap)` method can be used to determine the key type of any `EnumMap`, even if it's empty.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class java.util.AbstractMap

      `java.util.AbstractMap.SimpleEntry<K extends java.lang.Object,​V extends java.lang.Object>, java.util.AbstractMap.SimpleImmutableEntry<K extends java.lang.Object,​V extends java.lang.Object>`

    - ### Nested classes/interfaces inherited from interface java.util.Map

      `java.util.Map.Entry<K extends java.lang.Object,​V extends java.lang.Object>`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EnumMap​(java.lang.Class<K> c)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.Class<K>` | `getKeyType()` |
    `K[]` | `getKeyUniverse()` |
    `int` | `getSize()` |
    `java.lang.Object[]` | `getVals()` |

    - ### Methods inherited from class java.util.EnumMap

      `clear, clone, containsKey, containsValue, entrySet, equals, get, hashCode, keySet, put, putAll, remove, size, values`

    - ### Methods inherited from class java.util.AbstractMap

      `isEmpty, toString`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.util.Map

      `compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll`

- - ### Constructor Detail

    - #### EnumMap

          EnumMap​(java.lang.Class<K> c)

  - ### Method Detail

    - #### getKeyUniverse

          public K[] getKeyUniverse()

    - #### getVals

          public java.lang.Object[] getVals()

    - #### getSize

          public int getSize()

    - #### getKeyType

          public java.lang.Class<K> getKeyType()