Reintroduce and obsolete static events for use in the distributed cache + added some accidentally removed scope completions

This commit is contained in:
Kenn Jacobsen
2021-03-17 12:47:16 +01:00
parent 3018e1ba89
commit 7a5af55cac
7 changed files with 134 additions and 77 deletions

View File

@@ -49,6 +49,16 @@ namespace Umbraco.Cms.Core.Cache
_logger.LogInformation("Initializing Umbraco internal event handlers for cache refreshing.");
// bind to user and user group events
Bind(() => UserService.SavedUserGroup += UserService_SavedUserGroup,
() => UserService.SavedUserGroup -= UserService_SavedUserGroup);
Bind(() => UserService.DeletedUserGroup += UserService_DeletedUserGroup,
() => UserService.DeletedUserGroup -= UserService_DeletedUserGroup);
Bind(() => UserService.SavedUser += UserService_SavedUser,
() => UserService.SavedUser -= UserService_SavedUser);
Bind(() => UserService.DeletedUser += UserService_DeletedUser,
() => UserService.DeletedUser -= UserService_DeletedUser);
// bind to dictionary events
Bind(() => LocalizationService.DeletedDictionaryItem += LocalizationService_DeletedDictionaryItem,
() => LocalizationService.DeletedDictionaryItem -= LocalizationService_DeletedDictionaryItem);
@@ -100,6 +110,10 @@ namespace Umbraco.Cms.Core.Cache
() => MacroService.Deleted -= MacroService_Deleted);
// bind to member events
Bind(() => MemberService.Saved += MemberService_Saved,
() => MemberService.Saved -= MemberService_Saved);
Bind(() => MemberService.Deleted += MemberService_Deleted,
() => MemberService.Deleted -= MemberService_Deleted);
Bind(() => MemberGroupService.Saved += MemberGroupService_Saved,
() => MemberGroupService.Saved -= MemberGroupService_Saved);
Bind(() => MemberGroupService.Deleted += MemberGroupService_Deleted,
@@ -119,6 +133,12 @@ namespace Umbraco.Cms.Core.Cache
//Bind(() => ContentService.DeletedBlueprint += ContentService_DeletedBlueprint,
// () => ContentService.DeletedBlueprint -= ContentService_DeletedBlueprint);
// bind to public access events
Bind(() => PublicAccessService.Saved += PublicAccessService_Saved,
() => PublicAccessService.Saved -= PublicAccessService_Saved);
Bind(() => PublicAccessService.Deleted += PublicAccessService_Deleted,
() => PublicAccessService.Deleted -= PublicAccessService_Deleted);
// bind to relation type events
Bind(() => RelationService.SavedRelationType += RelationService_SavedRelationType,
() => RelationService.SavedRelationType -= RelationService_SavedRelationType);
@@ -126,6 +146,20 @@ namespace Umbraco.Cms.Core.Cache
() => RelationService.DeletedRelationType -= RelationService_DeletedRelationType);
}
#region PublicAccessService
private void PublicAccessService_Saved(IPublicAccessService sender, SaveEventArgs<PublicAccessEntry> e)
{
_distributedCache.RefreshPublicAccess();
}
private void PublicAccessService_Deleted(IPublicAccessService sender, DeleteEventArgs<PublicAccessEntry> e)
{
_distributedCache.RefreshPublicAccess();
}
#endregion
#region ContentService
/// <summary>
@@ -259,6 +293,35 @@ namespace Umbraco.Cms.Core.Cache
#endregion
#region UserService
private void UserService_SavedUser(IUserService sender, SaveEventArgs<IUser> e)
{
foreach (var entity in e.SavedEntities)
_distributedCache.RefreshUserCache(entity.Id);
}
private void UserService_DeletedUser(IUserService sender, DeleteEventArgs<IUser> e)
{
foreach (var entity in e.DeletedEntities)
_distributedCache.RemoveUserCache(entity.Id);
}
private void UserService_SavedUserGroup(IUserService sender, SaveEventArgs<UserGroupWithUsers> e)
{
foreach (var entity in e.SavedEntities)
_distributedCache.RefreshUserGroupCache(entity.UserGroup.Id);
}
private void UserService_DeletedUserGroup(IUserService sender, DeleteEventArgs<IUserGroup> e)
{
foreach (var entity in e.DeletedEntities)
_distributedCache.RemoveUserGroupCache(entity.Id);
}
#endregion
#region FileService
/// <summary>
@@ -314,6 +377,20 @@ namespace Umbraco.Cms.Core.Cache
#endregion
#region MemberService
private void MemberService_Deleted(IMemberService sender, DeleteEventArgs<IMember> e)
{
_distributedCache.RemoveMemberCache(e.DeletedEntities.ToArray());
}
private void MemberService_Saved(IMemberService sender, SaveEventArgs<IMember> e)
{
_distributedCache.RefreshMemberCache(e.SavedEntities.ToArray());
}
#endregion
#region MemberGroupService
private void MemberGroupService_Deleted(IMemberGroupService sender, DeleteEventArgs<IMemberGroup> e)