getObjectBoxModel function

ModelDefinition getObjectBoxModel()

Returns the ObjectBox model definition for this project for use with obx.Store.new.

Implementation

obx_int.ModelDefinition getObjectBoxModel() {
  final model = obx_int.ModelInfo(
    // If this version is not found, it means that this file was generated
    // with an older version of the ObjectBox Dart generator.
    // Please regenerate this file with the current generator version.
    // Typically, this is done with `dart run build_runner build`.
    generatorVersion: obx_int.GeneratorVersion.v2025_12_16,
    entities: _entities,
    lastEntityId: const obx_int.IdUid(1, 7801521524617211043),
    lastIndexId: const obx_int.IdUid(2, 1358874114317400860),
    lastRelationId: const obx_int.IdUid(0, 0),
    lastSequenceId: const obx_int.IdUid(0, 0),
    retiredEntityUids: const [],
    retiredIndexUids: const [],
    retiredPropertyUids: const [],
    retiredRelationUids: const [],
    modelVersion: 5,
    modelVersionParserMinimum: 5,
    version: 1,
  );

  final bindings = <Type, obx_int.EntityDefinition>{
    FrStorageEntry: obx_int.EntityDefinition<FrStorageEntry>(
      model: _entities[0],
      toOneRelations: (FrStorageEntry object) => [],
      toManyRelations: (FrStorageEntry object) => {},
      getId: (FrStorageEntry object) => object.id,
      setId: (FrStorageEntry object, int id) {
        object.id = id;
      },
      objectToFB: (FrStorageEntry object, fb.Builder fbb) {
        final scopeHashOffset = fbb.writeString(object.scopeHash);
        final keyHashOffset = fbb.writeString(object.keyHash);
        final payloadOffset = fbb.writeString(object.payload);
        fbb.startTable(5);
        fbb.addInt64(0, object.id);
        fbb.addOffset(1, scopeHashOffset);
        fbb.addOffset(2, keyHashOffset);
        fbb.addOffset(3, payloadOffset);
        fbb.finish(fbb.endTable());
        return object.id;
      },
      objectFromFB: (obx.Store store, ByteData fbData) {
        final buffer = fb.BufferContext(fbData);
        final rootOffset = buffer.derefObject(0);
        final idParam = const fb.Int64Reader().vTableGet(
          buffer,
          rootOffset,
          4,
          0,
        );
        final scopeHashParam = const fb.StringReader(
          asciiOptimization: true,
        ).vTableGet(buffer, rootOffset, 6, '');
        final keyHashParam = const fb.StringReader(
          asciiOptimization: true,
        ).vTableGet(buffer, rootOffset, 8, '');
        final payloadParam = const fb.StringReader(
          asciiOptimization: true,
        ).vTableGet(buffer, rootOffset, 10, '');
        final object = FrStorageEntry(
          id: idParam,
          scopeHash: scopeHashParam,
          keyHash: keyHashParam,
          payload: payloadParam,
        );

        return object;
      },
    ),
  };

  return obx_int.ModelDefinition(model, bindings);
}