Package com.esotericsoftware.kryo.util
Class DefaultClassResolver
java.lang.Object
com.esotericsoftware.kryo.util.DefaultClassResolver
- All Implemented Interfaces:
ClassResolver
Resolves classes by ID or by fully qualified class name.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected IdentityObjectIntMap
<Class> protected final ObjectMap
<Class, Registration> protected final IntMap
<Registration> protected Kryo
private Class
private int
private Registration
private Registration
static final byte
protected int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetRegistration
(int classID) Returns the registration for the specified ID, or null if no class is registered with that ID.getRegistration
(Class type) Returns the registration for the specified class, or null if the class is not registered.protected Class
<?> getTypeByName
(String className) Reads a class and returns its registration.protected Registration
register
(Registration registration) Stores the specified registration.registerImplicit
(Class type) Called when an unregistered type is encountered andKryo.setRegistrationRequired(boolean)
is false.void
reset()
Called byKryo.reset()
.void
Sets the Kryo instance that this ClassResolver will be used for.writeClass
(Output output, Class type) Writes a class and returns its registration.protected void
writeName
(Output output, Class type, Registration registration)
-
Field Details
-
NAME
public static final byte NAME- See Also:
-
kryo
-
idToRegistration
-
classToRegistration
-
classToNameId
-
nameIdToClass
-
nameToClass
-
nextNameId
protected int nextNameId -
memoizedClassId
private int memoizedClassId -
memoizedClassIdValue
-
memoizedClass
-
memoizedClassValue
-
-
Constructor Details
-
DefaultClassResolver
public DefaultClassResolver()
-
-
Method Details
-
setKryo
Description copied from interface:ClassResolver
Sets the Kryo instance that this ClassResolver will be used for. This is called automatically by Kryo.- Specified by:
setKryo
in interfaceClassResolver
-
register
Description copied from interface:ClassResolver
Stores the specified registration.- Specified by:
register
in interfaceClassResolver
- See Also:
-
registerImplicit
Description copied from interface:ClassResolver
Called when an unregistered type is encountered andKryo.setRegistrationRequired(boolean)
is false.- Specified by:
registerImplicit
in interfaceClassResolver
-
getRegistration
Description copied from interface:ClassResolver
Returns the registration for the specified class, or null if the class is not registered.- Specified by:
getRegistration
in interfaceClassResolver
-
getRegistration
Description copied from interface:ClassResolver
Returns the registration for the specified ID, or null if no class is registered with that ID.- Specified by:
getRegistration
in interfaceClassResolver
-
writeClass
Description copied from interface:ClassResolver
Writes a class and returns its registration.- Specified by:
writeClass
in interfaceClassResolver
- Parameters:
type
- May be null.- Returns:
- Will be null if type is null.
-
writeName
-
readClass
Description copied from interface:ClassResolver
Reads a class and returns its registration.- Specified by:
readClass
in interfaceClassResolver
- Returns:
- May be null.
-
readName
-
getTypeByName
-
reset
public void reset()Description copied from interface:ClassResolver
Called byKryo.reset()
.- Specified by:
reset
in interfaceClassResolver
-