From 8e530cf82d62d6a004d4d2332262f38f98a76bfa Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Tue, 2 Dec 2014 13:20:09 -0800 Subject: [PATCH] Adding back argument for serialization purposes and updating extension methods to disambiguate between "object Get(string)" and "T Get(string)". --- .../Helpers/CachingExtensions.cs | 20 +++++++++---------- .../Modules/Orchard.Caching/Module.txt | 2 +- .../Services/DefaultCacheService.cs | 8 ++++---- .../Services/DefaultCacheStorageProvider.cs | 6 +++--- .../Orchard.Caching/Services/ICacheService.cs | 6 +++--- .../Services/ICacheStorageProvider.cs | 6 +++--- .../Caching/RedisCacheStorageProvider.cs | 8 ++++---- 7 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Helpers/CachingExtensions.cs b/src/Orchard.Web/Modules/Orchard.Caching/Helpers/CachingExtensions.cs index a5074654e..d13bbeef0 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Helpers/CachingExtensions.cs +++ b/src/Orchard.Web/Modules/Orchard.Caching/Helpers/CachingExtensions.cs @@ -3,24 +3,24 @@ using Orchard.Caching.Services; namespace Orchard.Caching.Helpers { public static class CachingExtensions { - public static T Get(this ICacheStorageProvider provider, string key) { - return (T)provider.Get(key); + public static T GetValue(this ICacheStorageProvider provider, string key) { + return (T)provider.Get(key); } - public static T Get(this ICacheService cacheService, string key) { - return Get(cacheService, key, null); + public static T GetValue(this ICacheService cacheService, string key) { + return GetValue(cacheService, key, null); } - public static T Get(this ICacheService cacheService, string key, TimeSpan validFor) { - return Get(cacheService, key, null, validFor); + public static T GetValue(this ICacheService cacheService, string key, TimeSpan validFor) { + return GetValue(cacheService, key, null, validFor); } - public static T Get(this ICacheService cacheService, string key, Func factory) { - return Get(cacheService, key, factory, TimeSpan.MinValue); + public static T GetValue(this ICacheService cacheService, string key, Func factory) { + return GetValue(cacheService, key, factory, TimeSpan.MinValue); } - public static T Get(this ICacheService cacheService, string key, Func factory, TimeSpan validFor) { - var result = cacheService.Get(key); + public static T GetValue(this ICacheService cacheService, string key, Func factory, TimeSpan validFor) { + var result = cacheService.Get(key); if (result == null && factory != null) { var computed = factory(); diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Module.txt b/src/Orchard.Web/Modules/Orchard.Caching/Module.txt index c047182af..cc209a36b 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Caching/Module.txt @@ -8,4 +8,4 @@ Description: Provides an API to cache business data. Features: Orchard.Caching: Description: Provides an API to cache business data. - Category: Performance \ No newline at end of file + Category: Performance \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheService.cs b/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheService.cs index 8e8a0da82..db2f5a779 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheService.cs +++ b/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheService.cs @@ -16,15 +16,15 @@ namespace Orchard.Caching.Services { _prefix = shellSettings.Name; } - public object Get(string key) { - return _cacheStorageProvider.Get(BuildFullKey(key)); + public object Get(string key) { + return _cacheStorageProvider.Get(BuildFullKey(key)); } - public void Put(string key, object value) { + public void Put(string key, T value) { _cacheStorageProvider.Put(BuildFullKey(key), value); } - public void Put(string key, object value, TimeSpan validFor) { + public void Put(string key, T value, TimeSpan validFor) { _cacheStorageProvider.Put(BuildFullKey(key), value, validFor); } diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheStorageProvider.cs b/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheStorageProvider.cs index e2e26fb22..5b576cc61 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheStorageProvider.cs +++ b/src/Orchard.Web/Modules/Orchard.Caching/Services/DefaultCacheStorageProvider.cs @@ -17,12 +17,12 @@ namespace Orchard.Caching.Services { _clock = clock; } - public void Put(string key, object value) { + public void Put(string key, T value) { // Keys are already prefixed by DefaultCacheService so no need to do it here again. _cache.Set(key, value, GetCacheItemPolicy(ObjectCache.InfiniteAbsoluteExpiration)); } - public void Put(string key, object value, TimeSpan validFor) { + public void Put(string key, T value, TimeSpan validFor) { _cache.Set(key, value, GetCacheItemPolicy(new DateTimeOffset(_clock.UtcNow).ToOffset(validFor))); } @@ -36,7 +36,7 @@ namespace Orchard.Caching.Services { } } - public object Get(string key) { + public object Get(string key) { return _cache.Get(key); } diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheService.cs b/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheService.cs index f2ed9cd71..807a5fb63 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheService.cs +++ b/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheService.cs @@ -2,10 +2,10 @@ namespace Orchard.Caching.Services { public interface ICacheService : IDependency { - object Get(string key); + object Get(string key); - void Put(string key, object value); - void Put(string key, object value, TimeSpan validFor); + void Put(string key, T value); + void Put(string key, T value, TimeSpan validFor); void Remove(string key); void Clear(); diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheStorageProvider.cs b/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheStorageProvider.cs index 545b4f0df..4be4dc974 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheStorageProvider.cs +++ b/src/Orchard.Web/Modules/Orchard.Caching/Services/ICacheStorageProvider.cs @@ -2,9 +2,9 @@ namespace Orchard.Caching.Services { public interface ICacheStorageProvider : IDependency { - object Get(string key); - void Put(string key, object value); - void Put(string key, object value, TimeSpan validFor); + object Get(string key); + void Put(string key, T value); + void Put(string key, T value, TimeSpan validFor); void Remove(string key); void Clear(); } diff --git a/src/Orchard.Web/Modules/Orchard.Redis/Caching/RedisCacheStorageProvider.cs b/src/Orchard.Web/Modules/Orchard.Redis/Caching/RedisCacheStorageProvider.cs index 8ec1c9a37..587d50a2e 100644 --- a/src/Orchard.Web/Modules/Orchard.Redis/Caching/RedisCacheStorageProvider.cs +++ b/src/Orchard.Web/Modules/Orchard.Redis/Caching/RedisCacheStorageProvider.cs @@ -32,17 +32,17 @@ namespace Orchard.Redis.Caching { Logger = NullLogger.Instance; } - public object Get(string key) { + public object Get(string key) { var json = Database.StringGet(GetLocalizedKey(key)); - return JsonConvert.DeserializeObject(json); + return JsonConvert.DeserializeObject(json); } - public void Put(string key, object value) { + public void Put(string key, T value) { var json = JsonConvert.SerializeObject(value); Database.StringSet(GetLocalizedKey(key), json, null); } - public void Put(string key, object value, TimeSpan validFor) { + public void Put(string key, T value, TimeSpan validFor) { var json = JsonConvert.SerializeObject(value); Database.StringSet(GetLocalizedKey(key), json, validFor); }