Refactored TileImageLoader

This commit is contained in:
Clemens 2021-11-22 23:07:07 +01:00
parent c78e72f735
commit d4e851e0f7
4 changed files with 30 additions and 24 deletions

View file

@ -36,7 +36,7 @@ namespace MapControl
public static Caching.IImageCache Cache { get; set; }
private static async Task LoadCachedTileAsync(Tile tile, Uri uri, string cacheKey)
private static async Task LoadCachedTile(Tile tile, Uri uri, string cacheKey)
{
var cacheItem = await Cache.GetAsync(cacheKey).ConfigureAwait(false);
var buffer = cacheItem?.Item1;
@ -56,16 +56,16 @@ namespace MapControl
if (buffer != null && buffer.Length > 0)
{
await SetTileImageAsync(tile, () => ImageLoader.LoadImageAsync(buffer)).ConfigureAwait(false);
await SetTileImage(tile, () => ImageLoader.LoadImageAsync(buffer)).ConfigureAwait(false);
}
}
private static Task LoadTileAsync(Tile tile, TileSource tileSource)
private static Task LoadTile(Tile tile, TileSource tileSource)
{
return SetTileImageAsync(tile, () => tileSource.LoadImageAsync(tile.XIndex, tile.Y, tile.ZoomLevel));
return SetTileImage(tile, () => tileSource.LoadImageAsync(tile.XIndex, tile.Y, tile.ZoomLevel));
}
public static async Task SetTileImageAsync(Tile tile, Func<Task<ImageSource>> loadImageFunc)
private static async Task SetTileImage(Tile tile, Func<Task<ImageSource>> loadImageFunc)
{
var tcs = new TaskCompletionSource<object>();