Henrik
7f88013689
Make internal & private classes sealed where possible, to avoid code for virtual dispatch ( #19719 )
2025-07-21 08:32:54 +02:00
Henrik
ed08923b46
Use the new more efficient .NET 9 Lock type ( #18015 )
2025-01-20 11:41:13 +01:00
Ronald Barendse
c989c5e214
Support publishing multiple notifications, filter on handler type and add IDistributedCacheNotificationHandler<TNotification> (optimizes cache refreshers) ( #14332 )
...
* Clean up DistributedCache and add additional checks
* Add IEnumerable overloads to DistributedCacheExtensions
* Update handlers to use new IEnumerable overloads
* Move DistributedCacheExtensions to Core
* Restructure cache refreshers into folders
* Add IDistributedCacheNotificationHandler
* Rewrite DistributedCacheBinder into seperate IDistributedCacheNotificationHandler implementations
* Obsolete DistributedCacheBinder and use new IDistributedCacheHandler implementations
* Clean up ServerMessengerBase
* Ensure cache refreshers only process distinct values
* Add support for publishing multiple notifications and filter on handler type
* Suppress compatibility issues
* Remove DistributedCacheBinder and suppress compatibility issues
* Add ScopedNotificationPublisher<TNotificationHandler>
* Improve notification type lookup/enumeration
* Ensure INotificationAsyncHandler handles multiple notitications sequentially
* Minimize cache instruction JSON
* Chunk notifications by type to keep publish order
* Only serialize required RefreshInstruction properties
2023-06-20 11:15:47 +02:00
Nikolaj Geisle
60a5b19dc9
V10: Fix build warnings in core ( #12438 )
...
* Run code cleanup
* Start manual cleanup after dotnet format
* Finish up manual pass
* Fix up missed warnings
* Fix after merge
* Update src/Umbraco.Core/Cache/ContentTypeCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/DataTypeCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/DeepCloneAppCache.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/DomainCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/FastDictionaryAppCacheBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/FastDictionaryAppCacheBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/FastDictionaryAppCacheBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/FastDictionaryAppCacheBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/FastDictionaryAppCacheBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/MacroCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/MediaCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/MemberCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Cache/MemberGroupCacheRefresher.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Composing/OrderedCollectionBuilderBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Configuration/Models/RequestHandlerSettings.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Composing/SetCollectionBuilderBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Composing/WeightedCollectionBuilderBase.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/ContentApps/ContentAppFactoryCollectionBuilder.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Dashboards/DashboardCollectionBuilder.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/ContentTypeRefreshedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/ContentTypeSavedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/ContentTypeSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/DictionaryCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/DataTypeCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/ContentUnpublishingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/DictionaryItemDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/DictionaryItemSavedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/DictionaryItemSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/DomainCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/LanguageCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MacroCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaEmptiedRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaEmptyingRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaMovedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaMovedToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaMovedToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaMovingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaMovingToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTreeChangeNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTreeChangeNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTypeChangedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTypeDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTypeMovedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTypeMovingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTypeMovingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MediaTypeRefreshedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberGroupCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberGroupDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberGroupSavedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberGroupSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeChangedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeDeletedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeMovedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeMovedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeMovingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeMovingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeRefreshedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MemberTypeSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/StringExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/UriExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MovedToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MovedToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MovingToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/MovingToRecycleBinNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PartialViewDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Extensions/UriExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/IO/PhysicalFileSystem.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/IO/PhysicalFileSystem.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/IO/ShadowWrapper.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Logging/DisposableTimer.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Install/InstallSteps/UpgradeStep.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Mapping/MapDefinitionCollectionBuilder.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Media/EmbedProviders/EmbedProvidersCollectionBuilder.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PartialViewSavedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Models/ContentEditing/ContentVariationDisplay.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PartialViewSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessEntryDeletedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessEntryDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessEntryDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessEntrySavedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessEntrySavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/PublicAccessEntrySavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/RelationTypeCacheRefresherNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/RelationTypeDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/RelationTypeSavedNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/RelationTypeSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/StatefulNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/StylesheetDeletingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Notifications/StylesheetSavingNotification.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Models/DeepCloneHelper.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Models/File.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Models/PropertyGroupExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Update src/Umbraco.Core/Models/PropertyGroupExtensions.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
* Fix based on review
* Fix after merge
Signed-off-by: Zeegaan <nge@umbraco.dk >
Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk >
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch >
Co-authored-by: Zeegaan <nge@umbraco.dk >
2022-06-07 15:28:38 +02:00
Nikolaj Geisle
b6d5465b49
Fix up to Macros in Core project
2022-01-13 09:27:37 +01:00
Shannon
2fc0fc6850
Removes CannotSuppressNotificationAttribute
2021-07-14 11:56:30 -06:00
Shannon
dcae692407
Fix typo, adds [CannotSuppressNotification]
2021-07-12 11:54:38 -06:00
Shannon
113b6598ed
removes raiseEvent params
2021-07-12 09:46:56 -06:00
Mole
2bf86acf38
V9: Place notifications in the same namespace ( #10231 )
...
* Gather all notifications in Umbraco.Cms.Core.Notifications
* Rename notifications to match convention
* Move and rename missed notifications
* Move the three remaining public notification into Umbraco.Cms.Core.Notifications
2021-05-11 14:33:49 +02:00
Kenn Jacobsen
27c5c1b461
Added some copyright notices and updated a few TODOs
2021-03-04 07:14:54 +01:00
Kenn Jacobsen
8e745eb13c
Create scoped notification publishing - particularly for "ed" notifications that must run after the current scope has completed
2021-03-03 17:11:42 +01:00