index<T extends Model> static method

Future<List<T>> index<T extends Model>({
  1. Disk disk = Model.defaultDisk,
})

Retrieves all instances of type T.

Implementation

static Future<List<T>> index<T extends Model>({
  Disk disk = Model.defaultDisk,
}) async {
  switch (disk) {
    case Disk.file:
      try {
        final models = await JsonFileModel.index<T>();
        if (models.isNotEmpty) {
          models.map((model) => model.disk = Model.defaultDisk);
          return models;
        }
        return [];
      } catch (e) {
        return [];
      }
    case Disk.sqlite:
      try {
        final models = await SQLiteModel.index<T>();
        if (models.isNotEmpty) {
          models.map((model) => model.disk = Disk.sqlite);
          return models;
        }
        return [];
      } catch (e) {
        return [];
      }
    case Disk.s3:
      return [];
  }
}