mirror of
https://github.com/ClemensFischer/XAML-Map-Control.git
synced 2025-12-06 07:12:04 +01:00
Unified ImageFileCache implementations
This commit is contained in:
parent
8d575f01cf
commit
e98f5b9bff
|
|
@ -45,19 +45,19 @@ namespace MapControl.Caching
|
|||
|
||||
public async Task SetAsync(string key, IBuffer buffer, DateTime expiration)
|
||||
{
|
||||
string path;
|
||||
var path = GetPath(key);
|
||||
|
||||
if (buffer != null && buffer.Length > 0 && (path = GetPath(key)) != null)
|
||||
if (buffer != null && buffer.Length > 0 && path != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
Directory.CreateDirectory(Path.GetDirectoryName(path));
|
||||
|
||||
using (var stream = File.Create(path).AsOutputStream())
|
||||
using (var stream = File.Create(path))
|
||||
{
|
||||
await stream.WriteAsync(buffer);
|
||||
await stream.WriteAsync(Encoding.ASCII.GetBytes(expiresTag).AsBuffer());
|
||||
await stream.WriteAsync(BitConverter.GetBytes(expiration.Ticks).AsBuffer());
|
||||
await stream.AsOutputStream().WriteAsync(buffer);
|
||||
await stream.WriteAsync(Encoding.ASCII.GetBytes(expiresTag), 0, 8);
|
||||
await stream.WriteAsync(BitConverter.GetBytes(expiration.Ticks), 0, 8);
|
||||
}
|
||||
|
||||
//Debug.WriteLine("ImageFileCache: Wrote {0}, Expires {1}", path, expiration.ToLocalTime());
|
||||
|
|
|
|||
|
|
@ -160,11 +160,10 @@ namespace MapControl.Caching
|
|||
|
||||
memoryCache.Set(key, imageCacheItem, policy);
|
||||
|
||||
string path;
|
||||
var buffer = imageCacheItem.Buffer;
|
||||
var path = GetPath(key);
|
||||
|
||||
if (imageCacheItem.Buffer != null &&
|
||||
imageCacheItem.Buffer.Length > 0 &&
|
||||
(path = GetPath(key)) != null)
|
||||
if (buffer != null && buffer.Length > 0 && path != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
|
@ -172,7 +171,7 @@ namespace MapControl.Caching
|
|||
|
||||
using (var stream = File.Create(path))
|
||||
{
|
||||
stream.Write(imageCacheItem.Buffer, 0, imageCacheItem.Buffer.Length);
|
||||
stream.Write(buffer, 0, buffer.Length);
|
||||
stream.Write(Encoding.ASCII.GetBytes(expiresTag), 0, 8);
|
||||
stream.Write(BitConverter.GetBytes(imageCacheItem.Expiration.Ticks), 0, 8);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue