]> source.dussan.org Git - nextcloud-server.git/commitdiff
Migrate parts of files app away from depecrated Ilogger 39218/head
authorfenn-cs <fenn25.fn@gmail.com>
Fri, 7 Jul 2023 01:52:39 +0000 (02:52 +0100)
committerfenn-cs <fenn25.fn@gmail.com>
Sun, 13 Aug 2023 10:37:34 +0000 (11:37 +0100)
- Migrate some backgrounds jobs, `TransferOwnership` & `DeleteOrphanedItems`
- Migrate `DirectEditingController`

Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
apps/files/lib/BackgroundJob/DeleteOrphanedItems.php
apps/files/lib/BackgroundJob/TransferOwnership.php
apps/files/lib/Controller/DirectEditingController.php
apps/files/tests/BackgroundJob/DeleteOrphanedItemsJobTest.php

index 669c2a4cde605e4738f5c9c10929c1755fcca51c..6163955ddfdf7d6838501b91cf737b0322ae3d71 100644 (file)
@@ -27,34 +27,26 @@ namespace OCA\Files\BackgroundJob;
 use OCP\AppFramework\Utility\ITimeFactory;
 use OCP\BackgroundJob\TimedJob;
 use OCP\DB\QueryBuilder\IQueryBuilder;
+use OCP\IDBConnection;
+use Psr\Log\LoggerInterface;
 
 /**
  * Delete all share entries that have no matching entries in the file cache table.
  */
 class DeleteOrphanedItems extends TimedJob {
        public const CHUNK_SIZE = 200;
-
-       /** @var \OCP\IDBConnection */
-       protected $connection;
-
-       /** @var \OCP\ILogger */
-       protected $logger;
-
-       /**
-        * Default interval in minutes
-        *
-        * @var int $defaultIntervalMin
-        **/
        protected $defaultIntervalMin = 60;
 
        /**
         * sets the correct interval for this timed job
         */
-       public function __construct(ITimeFactory $time) {
+       public function __construct(
+               ITimeFactory $time,
+               protected IDBConnection $connection,
+               protected LoggerInterface $logger,
+       ) {
                parent::__construct($time);
                $this->interval = $this->defaultIntervalMin * 60;
-               $this->connection = \OC::$server->getDatabaseConnection();
-               $this->logger = \OC::$server->getLogger();
        }
 
        /**
index 8c96fcf8385227f1ca8a7fa3d6c1bb3b4d319dfd..9103c307b7668981c1faf011fb202a1e0bba17ac 100644 (file)
@@ -33,46 +33,23 @@ use OCA\Files\Service\OwnershipTransferService;
 use OCP\AppFramework\Utility\ITimeFactory;
 use OCP\BackgroundJob\QueuedJob;
 use OCP\Files\IRootFolder;
-use OCP\ILogger;
 use OCP\IUser;
 use OCP\IUserManager;
 use OCP\Notification\IManager as NotificationManager;
+use Psr\Log\LoggerInterface;
 use function ltrim;
 
 class TransferOwnership extends QueuedJob {
-
-       /** @var IUserManager $userManager */
-       private $userManager;
-
-       /** @var OwnershipTransferService */
-       private $transferService;
-
-       /** @var ILogger */
-       private $logger;
-
-       /** @var NotificationManager */
-       private $notificationManager;
-
-       /** @var TransferOwnershipMapper */
-       private $mapper;
-       /** @var IRootFolder */
-       private $rootFolder;
-
-       public function __construct(ITimeFactory $timeFactory,
-                                                               IUserManager $userManager,
-                                                               OwnershipTransferService $transferService,
-                                                               ILogger $logger,
-                                                               NotificationManager $notificationManager,
-                                                               TransferOwnershipMapper $mapper,
-                                                               IRootFolder $rootFolder) {
+       public function __construct(
+               ITimeFactory $timeFactory,
+               private IUserManager $userManager,
+               private OwnershipTransferService $transferService,
+               private LoggerInterface $logger,
+               private NotificationManager $notificationManager,
+               private TransferOwnershipMapper $mapper,
+               private IRootFolder $rootFolder,
+               ) {
                parent::__construct($timeFactory);
-
-               $this->userManager = $userManager;
-               $this->transferService = $transferService;
-               $this->logger = $logger;
-               $this->notificationManager = $notificationManager;
-               $this->mapper = $mapper;
-               $this->rootFolder = $rootFolder;
        }
 
        protected function run($argument) {
@@ -116,7 +93,12 @@ class TransferOwnership extends QueuedJob {
                        );
                        $this->successNotification($transfer);
                } catch (TransferOwnershipException $e) {
-                       $this->logger->logException($e);
+                       $this->logger->error(
+                               $e->getMessage(),
+                               [
+                                       'exception' => $e,
+                               ],
+                       );
                        $this->failedNotication($transfer);
                }
 
@@ -136,7 +118,6 @@ class TransferOwnership extends QueuedJob {
                        ])
                        ->setObject('transfer', (string)$transfer->getId());
                $this->notificationManager->notify($notification);
-
                // Send notification to source user
                $notification = $this->notificationManager->createNotification();
                $notification->setUser($transfer->getTargetUser())
index d58be166e797d2da1f0db08541f1448f7a82e2df..5cc98e7ff1d6d6a322d65b48cd9d6f4fd6234fc0 100644 (file)
@@ -30,35 +30,24 @@ use OCP\AppFramework\OCSController;
 use OCP\DirectEditing\IManager;
 use OCP\DirectEditing\RegisterDirectEditorEvent;
 use OCP\EventDispatcher\IEventDispatcher;
-use OCP\ILogger;
 use OCP\IRequest;
 use OCP\IURLGenerator;
+use Psr\Log\LoggerInterface;
 
 class DirectEditingController extends OCSController {
-       /** @var IEventDispatcher */
-       private $eventDispatcher;
-
-       /** @var IManager */
-       private $directEditingManager;
-
-       /** @var IURLGenerator */
-       private $urlGenerator;
-
-       /** @var ILogger */
-       private $logger;
-
-       /** @var DirectEditingService */
-       private $directEditingService;
-
-       public function __construct($appName, IRequest $request, $corsMethods, $corsAllowedHeaders, $corsMaxAge,
-                                                               IEventDispatcher $eventDispatcher, IURLGenerator $urlGenerator, IManager $manager, DirectEditingService $directEditingService, ILogger $logger) {
+       public function __construct(
+               string $appName,
+               IRequest $request,
+               string $corsMethods,
+               string $corsAllowedHeaders,
+               int $corsMaxAge,
+               private IEventDispatcher $eventDispatcher,
+               private IURLGenerator $urlGenerator,
+               private IManager $directEditingManager,
+               private DirectEditingService $directEditingService,
+               private LoggerInterface $logger
+               ) {
                parent::__construct($appName, $request, $corsMethods, $corsAllowedHeaders, $corsMaxAge);
-
-               $this->eventDispatcher = $eventDispatcher;
-               $this->directEditingManager = $manager;
-               $this->directEditingService = $directEditingService;
-               $this->logger = $logger;
-               $this->urlGenerator = $urlGenerator;
        }
 
        /**
@@ -100,7 +89,12 @@ class DirectEditingController extends OCSController {
                                'url' => $this->urlGenerator->linkToRouteAbsolute('files.DirectEditingView.edit', ['token' => $token])
                        ]);
                } catch (Exception $e) {
-                       $this->logger->logException($e, ['message' => 'Exception when creating a new file through direct editing']);
+                       $this->logger->error(
+                               'Exception when creating a new file through direct editing',
+                               [
+                                       'exception' => $e
+                               ],
+                       );
                        return new DataResponse(['message' => 'Failed to create file: ' . $e->getMessage()], Http::STATUS_FORBIDDEN);
                }
        }
@@ -131,7 +125,12 @@ class DirectEditingController extends OCSController {
                                'url' => $this->urlGenerator->linkToRouteAbsolute('files.DirectEditingView.edit', ['token' => $token])
                        ]);
                } catch (Exception $e) {
-                       $this->logger->logException($e, ['message' => 'Exception when opening a file through direct editing']);
+                       $this->logger->error(
+                               'Exception when opening a file through direct editing',
+                               [
+                                       'exception' => $e
+                               ],
+                       );
                        return new DataResponse(['message' => 'Failed to open file: ' . $e->getMessage()], Http::STATUS_FORBIDDEN);
                }
        }
@@ -159,7 +158,12 @@ class DirectEditingController extends OCSController {
                try {
                        return new DataResponse($this->directEditingManager->getTemplates($editorId, $creatorId));
                } catch (Exception $e) {
-                       $this->logger->logException($e);
+                       $this->logger->error(
+                               $e->getMessage(),
+                               [
+                                       'exception' => $e
+                               ],
+                       );
                        return new DataResponse(['message' => 'Failed to obtain template list: ' . $e->getMessage()], Http::STATUS_INTERNAL_SERVER_ERROR);
                }
        }
index f7562345d8abec70304474e63227c989784cc414..fcc665a80ca85b4a057e889a9a665815ca9ed3b8 100644 (file)
@@ -26,6 +26,8 @@ namespace OCA\Files\Tests\BackgroundJob;
 use OCA\Files\BackgroundJob\DeleteOrphanedItems;
 use OCP\AppFramework\Utility\ITimeFactory;
 use OCP\DB\QueryBuilder\IQueryBuilder;
+use OCP\IDBConnection;
+use Psr\Log\LoggerInterface;
 
 /**
  * Class DeleteOrphanedItemsJobTest
@@ -35,15 +37,15 @@ use OCP\DB\QueryBuilder\IQueryBuilder;
  * @package Test\BackgroundJob
  */
 class DeleteOrphanedItemsJobTest extends \Test\TestCase {
-       /** @var \OCP\IDBConnection */
-       protected $connection;
-
+       protected IDBConnection $connection;
+       protected LoggerInterface $logger;
        protected ITimeFactory $timeFactory;
 
        protected function setUp(): void {
                parent::setUp();
-               $this->connection = \OC::$server->getDatabaseConnection();
+               $this->connection = \OC::$server->get(IDBConnection::class);
                $this->timeFactory = $this->createMock(ITimeFactory::class);
+               $this->logger = \OC::$server->get(LoggerInterface::class);
        }
 
        protected function cleanMapping($table) {
@@ -98,7 +100,7 @@ class DeleteOrphanedItemsJobTest extends \Test\TestCase {
                $mapping = $this->getMappings('systemtag_object_mapping');
                $this->assertCount(2, $mapping);
 
-               $job = new DeleteOrphanedItems($this->timeFactory);
+               $job = new DeleteOrphanedItems($this->timeFactory, $this->connection, $this->logger);
                $this->invokePrivate($job, 'cleanSystemTags');
 
                $mapping = $this->getMappings('systemtag_object_mapping');
@@ -147,7 +149,7 @@ class DeleteOrphanedItemsJobTest extends \Test\TestCase {
                $mapping = $this->getMappings('vcategory_to_object');
                $this->assertCount(2, $mapping);
 
-               $job = new DeleteOrphanedItems($this->timeFactory);
+               $job = new DeleteOrphanedItems($this->timeFactory, $this->connection, $this->logger);
                $this->invokePrivate($job, 'cleanUserTags');
 
                $mapping = $this->getMappings('vcategory_to_object');
@@ -198,7 +200,7 @@ class DeleteOrphanedItemsJobTest extends \Test\TestCase {
                $mapping = $this->getMappings('comments');
                $this->assertCount(2, $mapping);
 
-               $job = new DeleteOrphanedItems($this->timeFactory);
+               $job = new DeleteOrphanedItems($this->timeFactory, $this->connection, $this->logger);
                $this->invokePrivate($job, 'cleanComments');
 
                $mapping = $this->getMappings('comments');
@@ -247,7 +249,7 @@ class DeleteOrphanedItemsJobTest extends \Test\TestCase {
                $mapping = $this->getMappings('comments_read_markers');
                $this->assertCount(2, $mapping);
 
-               $job = new DeleteOrphanedItems($this->timeFactory);
+               $job = new DeleteOrphanedItems($this->timeFactory, $this->connection, $this->logger);
                $this->invokePrivate($job, 'cleanCommentMarkers');
 
                $mapping = $this->getMappings('comments_read_markers');