Add ImportAsUpdate method to IModelImporter to avoid otehr changes

This commit is contained in:
Dean Herbert
2022-07-26 15:46:29 +09:00
parent 7d8a78ef01
commit 8370ca9765
11 changed files with 30 additions and 38 deletions

View File

@ -41,16 +41,18 @@ namespace osu.Game.Beatmaps
{
}
public async Task<IEnumerable<Live<BeatmapSetInfo>>> ImportAsUpdate(ProgressNotification notification, ImportTask importTask, BeatmapSetInfo original)
public override async Task<Live<BeatmapSetInfo>?> ImportAsUpdate(ProgressNotification notification, ImportTask importTask, BeatmapSetInfo original)
{
var imported = await Import(notification, importTask);
if (!imported.Any())
return imported;
return null;
Debug.Assert(imported.Count() == 1);
imported.First().PerformWrite(updated =>
var first = imported.First();
first.PerformWrite(updated =>
{
var realm = updated.Realm;
@ -103,7 +105,7 @@ namespace osu.Game.Beatmaps
realm.Remove(original);
});
return imported;
return first;
}
protected override bool ShouldDeleteArchive(string path) => Path.GetExtension(path).ToLowerInvariant() == ".osz";