diff options
Diffstat (limited to 'android/guava/src/com/google/common/collect/ImmutableEnumMap.java')
-rw-r--r-- | android/guava/src/com/google/common/collect/ImmutableEnumMap.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/android/guava/src/com/google/common/collect/ImmutableEnumMap.java b/android/guava/src/com/google/common/collect/ImmutableEnumMap.java index 66680f0e9..72b97d241 100644 --- a/android/guava/src/com/google/common/collect/ImmutableEnumMap.java +++ b/android/guava/src/com/google/common/collect/ImmutableEnumMap.java @@ -19,7 +19,10 @@ package com.google.common.collect; import static com.google.common.base.Preconditions.checkArgument; import com.google.common.annotations.GwtCompatible; +import com.google.common.annotations.J2ktIncompatible; import com.google.common.collect.ImmutableMap.IteratorBasedImmutableMap; +import java.io.InvalidObjectException; +import java.io.ObjectInputStream; import java.io.Serializable; import java.util.EnumMap; import javax.annotation.CheckForNull; @@ -96,13 +99,20 @@ final class ImmutableEnumMap<K extends Enum<K>, V> extends IteratorBasedImmutabl // All callers of the constructor are restricted to <K extends Enum<K>>. @Override + @J2ktIncompatible // serialization Object writeReplace() { return new EnumSerializedForm<>(delegate); } + @J2ktIncompatible // serialization + private void readObject(ObjectInputStream stream) throws InvalidObjectException { + throw new InvalidObjectException("Use EnumSerializedForm"); + } + /* * This class is used to serialize ImmutableEnumMap instances. */ + @J2ktIncompatible // serialization private static class EnumSerializedForm<K extends Enum<K>, V> implements Serializable { final EnumMap<K, V> delegate; |