public async Task CreateSong(SongModel song, Stream songContent, CancellationToken cancellationToken) { await storageRepository.AddSong(song, songContent, cancellationToken); // Adding to repository should be performed after adding to the storage, because later updates song checksum and size. await songsRepository.CreateSong(song, cancellationToken); DiscLibrary.AddSong(song); }