Skip to content

Commit e7dce63

Browse files
authored
Merge pull request #3970 from nextcloud/backport/3969/stable30
[stable30] fix: Dispatch event instead of hook for audit logging
2 parents f079a6f + 5f71414 commit e7dce63

File tree

2 files changed

+14
-52
lines changed

2 files changed

+14
-52
lines changed

lib/TokenManager.php

Lines changed: 13 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@
77
namespace OCA\Richdocuments;
88

99
use Exception;
10-
use OC\Files\Filesystem;
1110
use OCA\Files_Sharing\SharedStorage;
1211
use OCA\Richdocuments\Db\Direct;
1312
use OCA\Richdocuments\Db\Wopi;
1413
use OCA\Richdocuments\Db\WopiMapper;
15-
use OCA\Richdocuments\Service\CapabilitiesService;
1614
use OCA\Richdocuments\WOPI\Parser;
1715
use OCP\Constants;
16+
use OCP\EventDispatcher\IEventDispatcher;
17+
use OCP\Files\Events\Node\BeforeNodeReadEvent;
1818
use OCP\Files\File;
1919
use OCP\Files\IRootFolder;
2020
use OCP\Files\Node;
@@ -28,49 +28,18 @@
2828
use OCP\Util;
2929

3030
class TokenManager {
31-
/** @var IRootFolder */
32-
private $rootFolder;
33-
/** @var IManager */
34-
private $shareManager;
35-
/** @var IURLGenerator */
36-
private $urlGenerator;
37-
/** @var Parser */
38-
private $wopiParser;
39-
/** @var string */
40-
private $userId;
41-
/** @var WopiMapper */
42-
private $wopiMapper;
43-
/** @var IL10N */
44-
private $trans;
45-
/** @var CapabilitiesService */
46-
private $capabilitiesService;
47-
/** @var Helper */
48-
private $helper;
49-
/** @var PermissionManager */
50-
private $permissionManager;
51-
5231
public function __construct(
53-
IRootFolder $rootFolder,
54-
IManager $shareManager,
55-
IURLGenerator $urlGenerator,
56-
Parser $wopiParser,
57-
CapabilitiesService $capabilitiesService,
58-
$UserId,
59-
WopiMapper $wopiMapper,
60-
IL10N $trans,
61-
Helper $helper,
62-
PermissionManager $permissionManager
32+
private IRootFolder $rootFolder,
33+
private IManager $shareManager,
34+
private IURLGenerator $urlGenerator,
35+
private Parser $wopiParser,
36+
private ?string $userId,
37+
private WopiMapper $wopiMapper,
38+
private IL10N $trans,
39+
private Helper $helper,
40+
private PermissionManager $permissionManager,
41+
private IEventDispatcher $eventDispatcher,
6342
) {
64-
$this->rootFolder = $rootFolder;
65-
$this->shareManager = $shareManager;
66-
$this->urlGenerator = $urlGenerator;
67-
$this->wopiParser = $wopiParser;
68-
$this->capabilitiesService = $capabilitiesService;
69-
$this->trans = $trans;
70-
$this->userId = $UserId;
71-
$this->wopiMapper = $wopiMapper;
72-
$this->helper = $helper;
73-
$this->permissionManager = $permissionManager;
7443
}
7544

7645
/**
@@ -178,11 +147,7 @@ public function generateWopiToken(string $fileId, ?string $shareToken = null, ?s
178147
}
179148

180149
// force read operation to trigger possible audit logging
181-
\OC_Hook::emit(
182-
Filesystem::CLASSNAME,
183-
Filesystem::signal_read,
184-
[Filesystem::signal_param_path => $file->getPath()]
185-
);
150+
$this->eventDispatcher->dispatchTyped(new BeforeNodeReadEvent($file));
186151

187152
$serverHost = $this->urlGenerator->getAbsoluteURL('/');
188153
$guestName = $editoruid === null ? $this->prepareGuestName($this->helper->getGuestNameFromCookie()) : null;

tests/psalm-baseline.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<files psalm-version="5.24.0@462c80e31c34e58cc4f750c656be3927e80e550e">
2+
<files psalm-version="5.25.0@01a8eb06b9e9cc6cfb6a320bf9fb14331919d505">
33
<file src="lib/AppConfig.php">
44
<InvalidArgument>
55
<code><![CDATA[[]]]></code>
@@ -89,9 +89,6 @@
8989
<MissingDependency>
9090
<code><![CDATA[Image]]></code>
9191
</MissingDependency>
92-
<UndefinedThisPropertyAssignment>
93-
<code><![CDATA[$this->capabilitites]]></code>
94-
</UndefinedThisPropertyAssignment>
9592
</file>
9693
<file src="lib/Service/ConnectivityService.php">
9794
<UndefinedClass>

0 commit comments

Comments
 (0)