diff --git a/src/Umbraco.Web/Cache/ApplicationCacheRefresher.cs b/src/Umbraco.Web/Cache/ApplicationCacheRefresher.cs index a9e52fbb2f..8b742b1b2c 100644 --- a/src/Umbraco.Web/Cache/ApplicationCacheRefresher.cs +++ b/src/Umbraco.Web/Cache/ApplicationCacheRefresher.cs @@ -27,16 +27,19 @@ namespace Umbraco.Web.Cache public override void RefreshAll() { ApplicationContext.Current.ApplicationCache.ClearCacheItem(CacheKeys.ApplicationsCacheKey); + base.RefreshAll(); } public override void Refresh(int id) { Remove(id); + base.Refresh(id); } public override void Remove(int id) { ApplicationContext.Current.ApplicationCache.ClearCacheItem(CacheKeys.ApplicationsCacheKey); + base.Remove(id); } } diff --git a/src/Umbraco.Web/Cache/ApplicationTreeCacheRefresher.cs b/src/Umbraco.Web/Cache/ApplicationTreeCacheRefresher.cs index ba2306bfe4..e267b441a2 100644 --- a/src/Umbraco.Web/Cache/ApplicationTreeCacheRefresher.cs +++ b/src/Umbraco.Web/Cache/ApplicationTreeCacheRefresher.cs @@ -27,16 +27,19 @@ namespace Umbraco.Web.Cache public override void RefreshAll() { ApplicationContext.Current.ApplicationCache.ClearCacheItem(CacheKeys.ApplicationTreeCacheKey); + base.RefreshAll(); } public override void Refresh(int id) { Remove(id); + base.Refresh(id); } public override void Remove(int id) { ApplicationContext.Current.ApplicationCache.ClearCacheItem(CacheKeys.ApplicationTreeCacheKey); + base.Remove(id); } } diff --git a/src/Umbraco.Web/Cache/MemberCacheRefresher.cs b/src/Umbraco.Web/Cache/MemberCacheRefresher.cs index 5267602402..97afd092a7 100644 --- a/src/Umbraco.Web/Cache/MemberCacheRefresher.cs +++ b/src/Umbraco.Web/Cache/MemberCacheRefresher.cs @@ -47,7 +47,7 @@ namespace Umbraco.Web.Cache public override void Refresh(IMember instance) { ClearCache(instance.Id); - base.Remove(instance); + base.Refresh(instance); } public override void Remove(IMember instance) diff --git a/src/Umbraco.Web/Cache/UserCacheRefresher.cs b/src/Umbraco.Web/Cache/UserCacheRefresher.cs index dda11ee2c4..deb36ae894 100644 --- a/src/Umbraco.Web/Cache/UserCacheRefresher.cs +++ b/src/Umbraco.Web/Cache/UserCacheRefresher.cs @@ -32,11 +32,13 @@ namespace Umbraco.Web.Cache RuntimeCacheProvider.Current.Clear(typeof(IUser)); ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.UserPermissionsCacheKey); ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.UserContextCacheKey); + base.RefreshAll(); } public override void Refresh(int id) { Remove(id); + base.Refresh(id); } public override void Remove(int id) @@ -48,6 +50,8 @@ namespace Umbraco.Web.Cache //we need to clear all UserContextCacheKey since we cannot invalidate based on ID since the cache is done so based //on the current contextId stored in the database ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.UserContextCacheKey); + + base.Remove(id); } } diff --git a/src/Umbraco.Web/Cache/UserPermissionsCacheRefresher.cs b/src/Umbraco.Web/Cache/UserPermissionsCacheRefresher.cs index fdafdedb09..e61ea0d7e0 100644 --- a/src/Umbraco.Web/Cache/UserPermissionsCacheRefresher.cs +++ b/src/Umbraco.Web/Cache/UserPermissionsCacheRefresher.cs @@ -31,17 +31,20 @@ namespace Umbraco.Web.Cache public override void RefreshAll() { - ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.UserPermissionsCacheKey); + ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.UserPermissionsCacheKey); + base.RefreshAll(); } public override void Refresh(int id) { Remove(id); + base.Refresh(id); } public override void Remove(int id) { ApplicationContext.Current.ApplicationCache.ClearCacheItem(string.Format("{0}{1}", CacheKeys.UserPermissionsCacheKey, id)); + base.Remove(id); } } } \ No newline at end of file diff --git a/src/Umbraco.Web/Cache/UserTypeCacheRefresher.cs b/src/Umbraco.Web/Cache/UserTypeCacheRefresher.cs index 7c4628dbe3..1a726da815 100644 --- a/src/Umbraco.Web/Cache/UserTypeCacheRefresher.cs +++ b/src/Umbraco.Web/Cache/UserTypeCacheRefresher.cs @@ -29,16 +29,19 @@ namespace Umbraco.Web.Cache public override void RefreshAll() { RuntimeCacheProvider.Current.Clear(typeof (IUserType)); + base.RefreshAll(); } public override void Refresh(int id) { RuntimeCacheProvider.Current.Delete(typeof(IUserType), id); + base.Refresh(id); } public override void Remove(int id) { RuntimeCacheProvider.Current.Delete(typeof(IUserType), id); + base.Remove(id); } }