Class ElsaClassInfoResolver.ArrayBased

java.lang.Object
org.mapdb.elsa.ElsaClassInfoResolver.ArrayBased
All Implemented Interfaces:
ElsaClassInfoResolver
Enclosing interface:
ElsaClassInfoResolver

public static class ElsaClassInfoResolver.ArrayBased extends Object implements ElsaClassInfoResolver
Stores Class Names in sequential array. Classes must always be registered in the same order, or their ID will change.
  • Field Details

  • Constructor Details

    • ArrayBased

      public ArrayBased(Class[] classes, ClassLoader classLoader)
      Registers set of classes with their classloader.
      Parameters:
      classes - classes used in resolver, index in array is class ID in binary data
      classLoader - used to load classes from their name
    • ArrayBased

      public ArrayBased(ElsaSerializerPojo.ClassInfo[] classInfos)
  • Method Details

    • getClassInfo

      public ElsaSerializerPojo.ClassInfo getClassInfo(int classId)
      Description copied from interface: ElsaClassInfoResolver
      Resolves Integer Class ID (used in binary data) into Class Info which contains class name, fields name, fields order...
      Specified by:
      getClassInfo in interface ElsaClassInfoResolver
      Parameters:
      classId - binary ID which represends class in serialized data
      Returns:
      Class structure information for given class
    • classToId

      public int classToId(String className)
      Description copied from interface: ElsaClassInfoResolver
      Resolves Class Name to its Class ID (used in binary data)/
      Specified by:
      classToId in interface ElsaClassInfoResolver
      Parameters:
      className - class name as returned by Class.getName()
      Returns:
      Class ID, it is used in serialized binary data to identify class