create method

void create()

Create this store synchronously

Prefer createAsync to avoid blocking the UI thread. Otherwise, this has slightly better performance.

Does nothing if the store already exists.

Implementation

void create() {
  if (ready) return;

  final db = Isar.openSync(
    [DbStoreDescriptorSchema, DbTileSchema, DbMetadataSchema],
    name: _id.toString(),
    directory: _rootDirectory.path,
    maxSizeMiB: FMTC.instance.settings.databaseMaxSize,
    compactOnLaunch: FMTC.instance.settings.databaseCompactCondition,
    inspector: false,
  );
  db.writeTxnSync(
    () => db.storeDescriptor.putSync(DbStoreDescriptor(name: _name)),
  );
  _registry.register(_id, db);
}