create static method

BackendWiring create({
  1. required BackendConfig config,
  2. required String baseDir,
})

Implementation

static BackendWiring create({
  required BackendConfig config,
  required String baseDir,
}) {
  final metaRepo = switch (config.metaBackend) {
    MetaBackend.hive => HiveMetaStorage(),
    MetaBackend.sqlite => SqliteMetaStorage(),
  };
  final packageStorage = switch (config.packageBackend) {
    PackageBackend.file => FileStorage(baseDir: baseDir),
    PackageBackend.s3 => S3Storage.fromConfig(config.s3!),
  };

  return BackendWiring(
    metaRepo: metaRepo,
    packageStorage: packageStorage,
  );
}