deleteModel method

  1. @override
Future<void> deleteModel(
  1. ModelSpec spec
)
override

Deletes a model and all its files

Implementation

@override
Future<void> deleteModel(ModelSpec spec) async {
  await _ensureInitialized();

  debugPrint('UnifiedModelManager: Deleting model - ${spec.name}');

  try {
    final registry = ServiceRegistry.instance;
    final repository = registry.modelRepository;

    // Delete all files from filesystem and repository
    for (final file in spec.files) {
      await ModelFileSystemManager.deleteModelFile(file.filename);
      await repository.deleteModel(file.filename);
    }

    debugPrint('UnifiedModelManager: Model deleted - ${spec.name}');
  } catch (e) {
    debugPrint('UnifiedModelManager: Failed to delete model - ${spec.name}: $e');
    throw ModelStorageException(
      'Failed to delete model: ${spec.name}',
      e,
      'deleteModel',
    );
  }
}