Class Hierarchy
- java.lang.Object
- java.util.AbstractCollection<E> (implements java.util.Collection<E>)
- java.util.AbstractList<E> (implements java.util.List<E>)
- java.util.ArrayList<E> (implements java.lang.Cloneable, java.util.List<E>, java.util.RandomAccess, java.io.Serializable)
- org.refcodes.hal.HalDataPageImpl (implements org.refcodes.hal.HalDataPage)
- java.util.ArrayList<E> (implements java.lang.Cloneable, java.util.List<E>, java.util.RandomAccess, java.io.Serializable)
- java.util.AbstractList<E> (implements java.util.List<E>)
- org.refcodes.hal.HalClientImpl (implements org.refcodes.hal.HalClient)
- org.refcodes.struct.PathMapBuilderImpl<T> (implements org.refcodes.struct.PathMap.PathMapBuilder<T>, java.io.Serializable)
- org.refcodes.struct.CanonicalMapBuilderImpl (implements org.refcodes.struct.CanonicalMap.CanonicalMapBuilder)
- org.refcodes.hal.HalDataImpl (implements org.refcodes.hal.HalData)
- org.refcodes.hal.HalMapImpl (implements org.refcodes.hal.HalMap)
- org.refcodes.hal.HalStructImpl (implements org.refcodes.hal.HalStruct)
- org.refcodes.struct.CanonicalMapBuilderImpl (implements org.refcodes.struct.CanonicalMap.CanonicalMapBuilder)
- java.lang.Throwable (implements java.io.Serializable)
- java.lang.Exception
- org.refcodes.exception.AbstractException (implements org.refcodes.exception.Trap)
- org.refcodes.hal.HalException
- java.lang.RuntimeException
- org.refcodes.exception.AbstractRuntimeException (implements org.refcodes.exception.Trap)
- org.refcodes.hal.HalRuntimeException
- org.refcodes.exception.AbstractRuntimeException (implements org.refcodes.exception.Trap)
- org.refcodes.exception.AbstractException (implements org.refcodes.exception.Trap)
- java.lang.Exception
- java.util.AbstractCollection<E> (implements java.util.Collection<E>)
Interface Hierarchy
- org.refcodes.mixin.AnnotatorAccessor
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.Dumpable, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>, java.util.Map<K,V>)
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.Dumpable, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.mixin.Clearable
- org.refcodes.struct.Keys.MutableKeys<K,V> (also extends org.refcodes.struct.Keys<K,V>)
- org.refcodes.struct.Keys.MutableValues<K,V>
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Dictionary<K,V>)
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends java.util.Map<K,V>, org.refcodes.struct.PathMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Dictionary<K,V>)
- org.refcodes.struct.Keys.MutableValues<K,V>
- org.refcodes.struct.Keys.MutableKeys<K,V> (also extends org.refcodes.struct.Keys<K,V>)
- org.refcodes.mixin.DelimiterAccessor
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.Dumpable, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>, java.util.Map<K,V>)
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.Dumpable, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.mixin.Dumpable
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>, java.util.Map<K,V>)
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.mixin.EmptyAccessor
- org.refcodes.struct.Containable
- org.refcodes.struct.Dictionary<K,V> (also extends org.refcodes.struct.Keys<K,V>)
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Keys.MutableValues<K,V>)
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends java.util.Map<K,V>, org.refcodes.struct.PathMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.DelimiterAccessor, org.refcodes.mixin.Dumpable, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>, java.util.Map<K,V>)
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Keys.MutableValues<K,V>)
- org.refcodes.struct.Dictionary<K,V> (also extends org.refcodes.struct.Keys<K,V>)
- org.refcodes.struct.Containable
- java.lang.Iterable<T>
- java.util.Collection<E>
- java.util.List<E>
- org.refcodes.hal.HalDataPage
- java.util.List<E>
- java.util.Collection<E>
- org.refcodes.struct.Keys<K,V>
- org.refcodes.struct.Dictionary<K,V> (also extends org.refcodes.struct.Containable)
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Keys.MutableValues<K,V>)
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends java.util.Map<K,V>, org.refcodes.struct.PathMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.DelimiterAccessor, org.refcodes.mixin.Dumpable, org.refcodes.mixin.TypeAccessor<T>)
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>, java.util.Map<K,V>)
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Keys.MutableValues<K,V>)
- org.refcodes.struct.Keys.MutableKeys<K,V> (also extends org.refcodes.mixin.Clearable)
- org.refcodes.struct.Keys.MutableValues<K,V>
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Dictionary<K,V>)
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.PathMap.MutablePathMap<T>)
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends java.util.Map<K,V>, org.refcodes.struct.PathMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>
- org.refcodes.struct.Dictionary.MutableDictionary<K,V> (also extends org.refcodes.struct.Dictionary<K,V>)
- org.refcodes.struct.Keys.MutableValues<K,V>
- org.refcodes.struct.Dictionary<K,V> (also extends org.refcodes.struct.Containable)
- java.util.Map<K,V>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, org.refcodes.struct.PathMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.web.OauthTokenAccessor
- org.refcodes.web.OauthTokenAccessor.OauthTokenProperty (also extends org.refcodes.web.OauthTokenAccessor.OauthTokenMutator)
- org.refcodes.hal.HalClient (also extends org.refcodes.web.OauthTokenAccessor.OauthTokenBuilder<B>)
- org.refcodes.web.OauthTokenAccessor.OauthTokenProperty (also extends org.refcodes.web.OauthTokenAccessor.OauthTokenMutator)
- org.refcodes.web.OauthTokenAccessor.OauthTokenBuilder<B>
- org.refcodes.hal.HalClient (also extends org.refcodes.web.OauthTokenAccessor.OauthTokenProperty)
- org.refcodes.web.OauthTokenAccessor.OauthTokenMutator
- org.refcodes.web.OauthTokenAccessor.OauthTokenProperty (also extends org.refcodes.web.OauthTokenAccessor)
- org.refcodes.hal.HalClient (also extends org.refcodes.web.OauthTokenAccessor.OauthTokenBuilder<B>)
- org.refcodes.web.OauthTokenAccessor.OauthTokenProperty (also extends org.refcodes.web.OauthTokenAccessor)
- org.refcodes.mixin.TypeAccessor<T>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.Dumpable)
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>, java.util.Map<K,V>)
- org.refcodes.struct.CanonicalMap
- org.refcodes.struct.PathMap.MutablePathMap<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary<K,V>, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.CanonicalMap.MutableCanonicalMap (also extends org.refcodes.struct.CanonicalMap, java.util.Map<K,V>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.PathMap.PathMapBuilder<T>)
- org.refcodes.struct.PathMap.PathMapBuilder<T> (also extends org.refcodes.struct.Dictionary.MutableDictionary.DictionaryBuilder<K,V,B>)
- org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T> (also extends org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>)
- org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T>
- org.refcodes.struct.InterOperableMap<T>
- org.refcodes.struct.PathMap<T> (also extends org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<K,V>, org.refcodes.mixin.Dumpable)
Enum Hierarchy
- java.lang.Object
- java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
- org.refcodes.hal.TraversalMode
- java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)