mirror of
https://github.com/nextcloud/server.git
synced 2026-06-08 16:26:59 -04:00
fix(files_trashbin): Migrate to IEventDispatcher and emit as typed event
Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
parent
489b4807db
commit
a6bf93501d
3 changed files with 9 additions and 7 deletions
|
|
@ -33,6 +33,7 @@ use OCP\Files\Node;
|
|||
* Event to allow other apps to disable the trash bin for specific files
|
||||
*
|
||||
* @package OCA\Files_Trashbin\Events
|
||||
* @since 28.0.0 Dispatched as a typed event
|
||||
*/
|
||||
class MoveToTrashEvent extends Event {
|
||||
|
||||
|
|
|
|||
|
|
@ -33,13 +33,13 @@ use OC\Files\Storage\Wrapper\Wrapper;
|
|||
use OCA\Files_Trashbin\Events\MoveToTrashEvent;
|
||||
use OCA\Files_Trashbin\Trash\ITrashManager;
|
||||
use OCP\Encryption\Exceptions\GenericEncryptionException;
|
||||
use OCP\EventDispatcher\IEventDispatcher;
|
||||
use OCP\Files\IRootFolder;
|
||||
use OCP\Files\Mount\IMountPoint;
|
||||
use OCP\Files\Node;
|
||||
use OCP\Files\Storage\IStorage;
|
||||
use OCP\ILogger;
|
||||
use OCP\IUserManager;
|
||||
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
|
||||
|
||||
class Storage extends Wrapper {
|
||||
/** @var IMountPoint */
|
||||
|
|
@ -51,7 +51,7 @@ class Storage extends Wrapper {
|
|||
/** @var ILogger */
|
||||
private $logger;
|
||||
|
||||
/** @var EventDispatcherInterface */
|
||||
/** @var IEventDispatcher */
|
||||
private $eventDispatcher;
|
||||
|
||||
/** @var IRootFolder */
|
||||
|
|
@ -69,7 +69,7 @@ class Storage extends Wrapper {
|
|||
* @param ITrashManager $trashManager
|
||||
* @param IUserManager|null $userManager
|
||||
* @param ILogger|null $logger
|
||||
* @param EventDispatcherInterface|null $eventDispatcher
|
||||
* @param IEventDispatcher|null $eventDispatcher
|
||||
* @param IRootFolder|null $rootFolder
|
||||
*/
|
||||
public function __construct(
|
||||
|
|
@ -77,7 +77,7 @@ class Storage extends Wrapper {
|
|||
ITrashManager $trashManager = null,
|
||||
IUserManager $userManager = null,
|
||||
ILogger $logger = null,
|
||||
EventDispatcherInterface $eventDispatcher = null,
|
||||
IEventDispatcher $eventDispatcher = null,
|
||||
IRootFolder $rootFolder = null
|
||||
) {
|
||||
$this->mountPoint = $parameters['mountPoint'];
|
||||
|
|
@ -153,6 +153,7 @@ class Storage extends Wrapper {
|
|||
|
||||
foreach ($nodes as $node) {
|
||||
$event = $this->createMoveToTrashEvent($node);
|
||||
$this->eventDispatcher->dispatchTyped($event);
|
||||
$this->eventDispatcher->dispatch('OCA\Files_Trashbin::moveToTrash', $event);
|
||||
if ($event->shouldMoveToTrashBin() === false) {
|
||||
return false;
|
||||
|
|
@ -217,7 +218,7 @@ class Storage extends Wrapper {
|
|||
\OC::$server->query(ITrashManager::class),
|
||||
\OC::$server->getUserManager(),
|
||||
\OC::$server->getLogger(),
|
||||
\OC::$server->getEventDispatcher(),
|
||||
\OC::$server->get(IEventDispatcher::class),
|
||||
\OC::$server->getLazyRootFolder()
|
||||
);
|
||||
}, 1);
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ use OCA\Files_Trashbin\Storage;
|
|||
use OCA\Files_Trashbin\Trash\ITrashManager;
|
||||
use OCP\AppFramework\Bootstrap\IBootContext;
|
||||
use OCP\AppFramework\Utility\ITimeFactory;
|
||||
use OCP\EventDispatcher\IEventDispatcher;
|
||||
use OCP\Files\Cache\ICache;
|
||||
use OCP\Files\Folder;
|
||||
use OCP\Files\IRootFolder;
|
||||
|
|
@ -50,7 +51,6 @@ use OCP\ILogger;
|
|||
use OCP\IUserManager;
|
||||
use OCP\Lock\ILockingProvider;
|
||||
use OCP\Share\IShare;
|
||||
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
|
||||
use Test\Traits\MountProviderTrait;
|
||||
|
||||
class TemporaryNoCross extends Temporary {
|
||||
|
|
@ -607,7 +607,7 @@ class StorageTest extends \Test\TestCase {
|
|||
$userManager->expects($this->any())
|
||||
->method('userExists')->willReturn($userExists);
|
||||
$logger = $this->getMockBuilder(ILogger::class)->getMock();
|
||||
$eventDispatcher = $this->createMock(EventDispatcherInterface::class);
|
||||
$eventDispatcher = $this->createMock(IEventDispatcher::class);
|
||||
$rootFolder = $this->createMock(IRootFolder::class);
|
||||
$userFolder = $this->createMock(Folder::class);
|
||||
$node = $this->getMockBuilder(Node::class)->disableOriginalConstructor()->getMock();
|
||||
|
|
|
|||
Loading…
Reference in a new issue