Removes RefreshByJson and changes macro cache refreshing to use objects
This commit is contained in:
@@ -104,10 +104,10 @@ namespace Umbraco.Web.Cache
|
||||
() => FileService.DeletedTemplate -= FileService_DeletedTemplate);
|
||||
|
||||
// bind to macro events
|
||||
Bind(() => MacroService.Saved += (sender, e) => MacroService_Saved(sender, e),
|
||||
() => MacroService.Saved -= (sender, e) => MacroService_Saved(sender, e));
|
||||
Bind(() => MacroService.Deleted += (sender, e) => MacroService_Deleted(sender, e),
|
||||
() => MacroService.Deleted -= (sender, e) => MacroService_Deleted(sender, e));
|
||||
Bind(() => MacroService.Saved += MacroService_Saved,
|
||||
() => MacroService.Saved -= MacroService_Saved);
|
||||
Bind(() => MacroService.Deleted += MacroService_Deleted,
|
||||
() => MacroService.Deleted -= MacroService_Deleted);
|
||||
|
||||
// bind to member events
|
||||
Bind(() => MemberService.Saved += MemberService_Saved,
|
||||
@@ -389,18 +389,16 @@ namespace Umbraco.Web.Cache
|
||||
|
||||
#region MacroService
|
||||
|
||||
private MacroCacheRefresher MacroCacheRefresher => _cacheRefresherCollection[MacroCacheRefresher.UniqueId] as MacroCacheRefresher;
|
||||
|
||||
private void MacroService_Deleted(IMacroService sender, DeleteEventArgs<IMacro> e)
|
||||
{
|
||||
foreach (var entity in e.DeletedEntities)
|
||||
_distributedCache.RemoveMacroCache(MacroCacheRefresher, entity);
|
||||
_distributedCache.RemoveMacroCache(entity);
|
||||
}
|
||||
|
||||
private void MacroService_Saved(IMacroService sender, SaveEventArgs<IMacro> e)
|
||||
{
|
||||
foreach (var entity in e.SavedEntities)
|
||||
_distributedCache.RefreshMacroCache(MacroCacheRefresher, entity);
|
||||
_distributedCache.RefreshMacroCache(entity);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -192,16 +192,18 @@ namespace Umbraco.Web.Cache
|
||||
|
||||
#region MacroCache
|
||||
|
||||
public static void RefreshMacroCache(this DistributedCache dc, MacroCacheRefresher macroCacheRefresher, IMacro macro)
|
||||
public static void RefreshMacroCache(this DistributedCache dc, IMacro macro)
|
||||
{
|
||||
if (macro == null) return;
|
||||
dc.RefreshByJson(macroCacheRefresher.RefresherUniqueId, macroCacheRefresher.Serialize(new MacroCacheRefresher.JsonPayload(macro.Id, macro.Alias)));
|
||||
var payloads = new[] { new MacroCacheRefresher.JsonPayload(macro.Id, macro.Alias) };
|
||||
dc.RefreshByPayload(MacroCacheRefresher.UniqueId, payloads);
|
||||
}
|
||||
|
||||
public static void RemoveMacroCache(this DistributedCache dc, MacroCacheRefresher macroCacheRefresher, IMacro macro)
|
||||
public static void RemoveMacroCache(this DistributedCache dc, IMacro macro)
|
||||
{
|
||||
if (macro == null) return;
|
||||
dc.RefreshByJson(macroCacheRefresher.RefresherUniqueId, macroCacheRefresher.Serialize(new MacroCacheRefresher.JsonPayload(macro.Id, macro.Alias)));
|
||||
var payloads = new[] { new MacroCacheRefresher.JsonPayload(macro.Id, macro.Alias) };
|
||||
dc.RefreshByPayload(MacroCacheRefresher.UniqueId, payloads);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
Reference in New Issue
Block a user