Class Model


public final class Model extends Table
A model describes all entities and other meta data. The current model of an app is synced against ObjectBox's persisted schema. The model itself is not persisted, and thus may change as long as both ends are consistent (Java and native). There could be multiple models/schemas (one dbi per schema) in the future.
  • Constructor Details

    • Model

      public Model()
  • Method Details

    • ValidateVersion

      public static void ValidateVersion()
    • getRootAsModel

      public static Model getRootAsModel(ByteBuffer _bb)
    • getRootAsModel

      public static Model getRootAsModel(ByteBuffer _bb, Model obj)
    • __init

      public void __init(int _i, ByteBuffer _bb)
    • __assign

      public Model __assign(int _i, ByteBuffer _bb)
    • modelVersion

      public long modelVersion()
      (Meta) version of the model, which is verified by model sync (e.g. Java version must match native version)
    • name

      public String name()
      currently always "default"
    • nameAsByteBuffer

      public ByteBuffer nameAsByteBuffer()
    • nameInByteBuffer

      public ByteBuffer nameInByteBuffer(ByteBuffer _bb)
    • version

      public long version()
      User controlled version, not really used at the moment
    • entities

      public ModelEntity entities(int j)
    • entities

      public ModelEntity entities(ModelEntity obj, int j)
    • entitiesLength

      public int entitiesLength()
    • entitiesVector

      public ModelEntity.Vector entitiesVector()
    • entitiesVector

      public ModelEntity.Vector entitiesVector(ModelEntity.Vector obj)
    • lastEntityId

      public IdUid lastEntityId()
    • lastEntityId

      public IdUid lastEntityId(IdUid obj)
    • lastIndexId

      public IdUid lastIndexId()
    • lastIndexId

      public IdUid lastIndexId(IdUid obj)
    • lastSequenceId

      public IdUid lastSequenceId()
    • lastSequenceId

      public IdUid lastSequenceId(IdUid obj)
    • lastRelationId

      public IdUid lastRelationId()
    • lastRelationId

      public IdUid lastRelationId(IdUid obj)
    • hash

      public int hash(int j)
      Hash of the model/schema; usually want to check hashes before even creating a model and thus avoiding creating the model altogether. But, at least for now, let language bindings provide it via the model optionally. We use SipHash 128 (16 bytes).
    • hashLength

      public int hashLength()
    • hashVector

      public ByteVector hashVector()
    • hashVector

      public ByteVector hashVector(ByteVector obj)
    • hashAsByteBuffer

      public ByteBuffer hashAsByteBuffer()
    • hashInByteBuffer

      public ByteBuffer hashInByteBuffer(ByteBuffer _bb)
    • startModel

      public static void startModel(FlatBufferBuilder builder)
    • addModelVersion

      public static void addModelVersion(FlatBufferBuilder builder, long modelVersion)
    • addName

      public static void addName(FlatBufferBuilder builder, int nameOffset)
    • addVersion

      public static void addVersion(FlatBufferBuilder builder, long version)
    • addEntities

      public static void addEntities(FlatBufferBuilder builder, int entitiesOffset)
    • createEntitiesVector

      public static int createEntitiesVector(FlatBufferBuilder builder, int[] data)
    • startEntitiesVector

      public static void startEntitiesVector(FlatBufferBuilder builder, int numElems)
    • addLastEntityId

      public static void addLastEntityId(FlatBufferBuilder builder, int lastEntityIdOffset)
    • addLastIndexId

      public static void addLastIndexId(FlatBufferBuilder builder, int lastIndexIdOffset)
    • addLastSequenceId

      public static void addLastSequenceId(FlatBufferBuilder builder, int lastSequenceIdOffset)
    • addLastRelationId

      public static void addLastRelationId(FlatBufferBuilder builder, int lastRelationIdOffset)
    • addHash

      public static void addHash(FlatBufferBuilder builder, int hashOffset)
    • createHashVector

      public static int createHashVector(FlatBufferBuilder builder, byte[] data)
    • createHashVector

      public static int createHashVector(FlatBufferBuilder builder, ByteBuffer data)
    • startHashVector

      public static void startHashVector(FlatBufferBuilder builder, int numElems)
    • endModel

      public static int endModel(FlatBufferBuilder builder)
    • finishModelBuffer

      public static void finishModelBuffer(FlatBufferBuilder builder, int offset)
    • finishSizePrefixedModelBuffer

      public static void finishSizePrefixedModelBuffer(FlatBufferBuilder builder, int offset)