Deleting media via services results in a published MediaDeletedNotification
via scope.Notifications, these are fired on Scope.Complete() and picked up
by the registered handlers.
* Add failing test to demo issue with handlers + scoped dependencies.
* Make using scoped services in notification handlers less painful.
* Update comments for accuracy.
* Try to update admin user unattended
This will fail because we're not in install runtime state
* Create a new user instead of trying to update the default admin
* Create a new user instead of trying to update the default admin
* Use same logic from NewInstallStep to modify the SuperUser aka -1
* Add back stuff after merge conflict from v8/dev
* Add event to be raised
* Trying to wire up events
* Remove commented out code - just need to figure out why event is not hit/triggered
* Read Appsettings as opposed to ENV variables
* Use a JSON file that deletes itself as storing secrets in web.config will be accidently committed
* Remove component based event - Component were only initialized after DB creation
* Move UnattendedInstall down after _factory
* Remove commented out code
* Fixed issue where upgrader UI would show up - needed to recheck the Runtimelevel after UnattenedInstall
* Apply suggestions from code review - Thanks Marc :)
Co-authored-by: Marc Goodson <marc@moriyama.co.uk>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
Co-authored-by: Marc Goodson <marc@moriyama.co.uk>
* 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
* Allow IMediaFileSystem to be replace in the DI, or registered with inner filesystem
* Remove GetFileSystem from Filesystems
It was only used by tests.
* Make MediaFileSystem inherit from PhysicalFileSystem directly
* Remove FileSystemWrapper
* Remove inner filesystem from MediaFileSystem
* Add MediaFileManager and bare minimum to make it testable
* Remove MediaFileSystem
* Fix unit tests using MediaFileManager
* Remove IFileSystem and rely only on FileSystem
* Hide dangerous methods in FileSystems and do some cleaning
* Apply stylecop warnings to MediaFileManager
* Add FilesystemsCreator to Tests.Common
This allows you to create an instance if FileSystems with your own specified IFileSystem for testing purposes outside our own test suite.
* Allow the stylesheet filesystem to be replaced.
* Fix tests
* Don't save stylesheetWrapper in a temporary var
* refactor(FileSystems): change how stylesheet filesystem is registered
* fix(FileSystems): unable to overwrite media filesystem
SetMediaFileSystem added the MediaManager as a Singleton instead of
replacing the existing instance.
* fix(FileSystems): calling AddFileSystems replaces MediaManager
When calling AddFileSystems after SetMediaFileSystem the MediaManager
gets replaced by the default PhysicalFileSystem, so instead of calling
SetMediaFileSystem in AddFileSystems we now call TrySetMediaFileSystem
instead. This method will not replace any existing instance of the
MediaManager if there's already a MediaManager registered.
* Use SetMediaFileSystem instead of TrySet, and rename AddFilesystems to ConfigureFileSystems
Also don't call AddFileSystems again in ConfigureFilesystems
* Don't wrap CSS filesystem twice
* Add CreateShadowWrapperInternal to avoid casting
* Throw UnauthorizedAccessException isntead of InvalidOperationException
* Remove ResetShadowId
Co-authored-by: Rasmus John Pedersen <mail@rjp.dk>
* Remove ScopeEntityRemove from ContentRepositoryBase and rely on "ing" notifications
* Remove old event handler from ContentEventsTests
* Remove ScopedVersionRemove from ContentRepositoryBase and rely on service notifications instead
* Remove unused ScopedVersionEventArgs from ContentRepositoryBase
* Migrate ScopeEntityRefresh to notification pattern
Unfortunately it's still published from the repository base
* Add simple content type notifications
* Publish Notifications instead of events in ContentTypeServiceBase for simple events
* Switch OnChanged to use Notifications for ContentTypeServices
* Publish notifications instead of raising ScopedRefreshedEntity on ContentTypeServiceBase
* Hook up to the new ContentType notifications
* Remove DistributedCacheBinderTests
There are no longer any events to really test on.
* Remove ContentTypeChange EventArgs
* Remove ContentService_Copied from DistributedCacheBinder
It's no longer used
* Cleanup
* Cleanup
* Removed uncommented code
* Fixed issue with unattented installs
* Re-add ContentTreeChangeNotification to DistributedCache
* Add new notification for ScopedEntityRemove
Marked as obsolete/hidden in editor, since this should only be used for nucache for now, and should really be changed in the future
* Mark Refresh notifications as obsolete/hidden
These should not be used anywhere outside Nucache, and should be changed to tree change at some point.
* Raise ScopedEntityRemoveNotification on repos and use in nucache
Co-authored-by: Bjarke Berg <mail@bergmania.dk>