Skip to content

Commit 54eba11

Browse files
ArtificialOwlbackportbot[bot]
authored andcommitted
remove caching for shares
Signed-off-by: Maxence Lange <[email protected]>
1 parent dca759a commit 54eba11

File tree

2 files changed

+4
-56
lines changed

2 files changed

+4
-56
lines changed

lib/Service/MembershipService.php

-6
Original file line numberDiff line numberDiff line change
@@ -330,9 +330,6 @@ function (Membership $membership): string {
330330
if (!in_array($item->getCircleId(), $circleIds)) {
331331
$deprecated[] = $item;
332332
$this->membershipRequest->delete($item);
333-
334-
// clearing the getSharedWith() cache for singleId related to the membership
335-
$this->shareWrapperService->clearCache($item->getSingleId());
336333
}
337334
}
338335

@@ -362,9 +359,6 @@ private function createNewMemberships(array $memberships, array $known): array {
362359
$this->membershipRequest->insert($membership);
363360
$new[] = $membership;
364361
}
365-
366-
// clearing the getSharedWith() cache for singleId related to the membership
367-
$this->shareWrapperService->clearCache($membership->getSingleId());
368362
}
369363

370364
return $new;

lib/Service/ShareWrapperService.php

+4-50
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,10 @@
1818
use OCA\Circles\Model\FederatedUser;
1919
use OCA\Circles\Model\Probes\CircleProbe;
2020
use OCA\Circles\Model\ShareWrapper;
21-
use OCA\Circles\Tools\Exceptions\InvalidItemException;
2221
use OCA\Circles\Tools\Traits\TDeserialize;
2322
use OCA\Circles\Tools\Traits\TStringTools;
2423
use OCP\Files\Folder;
2524
use OCP\Files\NotFoundException;
26-
use OCP\ICache;
27-
use OCP\ICacheFactory;
2825
use OCP\Share\IShare;
2926

3027
/**
@@ -36,26 +33,9 @@ class ShareWrapperService {
3633
use TStringTools;
3734
use TDeserialize;
3835

39-
public const CACHE_SHARED_WITH = 'circles/getSharedWith';
40-
public const CACHE_SHARED_WITH_TTL = 900;
41-
42-
43-
/** @var ShareWrapperRequest */
44-
private $shareWrapperRequest;
45-
46-
private ICache $cache;
47-
48-
49-
/**
50-
* ShareWrapperService constructor.
51-
*
52-
* @param ICacheFactory $cacheFactory
53-
* @param ShareWrapperRequest $shareWrapperRequest
54-
*/
55-
public function __construct(ICacheFactory $cacheFactory, ShareWrapperRequest $shareWrapperRequest) {
56-
$this->cache = $cacheFactory->createDistributed(self::CACHE_SHARED_WITH);
57-
58-
$this->shareWrapperRequest = $shareWrapperRequest;
36+
public function __construct(
37+
private ShareWrapperRequest $shareWrapperRequest,
38+
) {
5939
}
6040

6141

@@ -78,7 +58,6 @@ public function searchShare(string $singleId, int $nodeId): ShareWrapper {
7858
* @throws NotFoundException
7959
*/
8060
public function save(IShare $share): void {
81-
$this->cache->clear('');
8261
$this->shareWrapperRequest->save($share);
8362
}
8463

@@ -87,7 +66,6 @@ public function save(IShare $share): void {
8766
* @param ShareWrapper $shareWrapper
8867
*/
8968
public function update(ShareWrapper $shareWrapper): void {
90-
$this->cache->clear('');
9169
$this->shareWrapperRequest->update($shareWrapper);
9270
}
9371

@@ -96,7 +74,6 @@ public function update(ShareWrapper $shareWrapper): void {
9674
* @param ShareWrapper $shareWrapper
9775
*/
9876
public function delete(ShareWrapper $shareWrapper): void {
99-
$this->cache->clear('');
10077
$this->shareWrapperRequest->delete((int)$shareWrapper->getId());
10178
}
10279

@@ -111,7 +88,6 @@ public function deleteUserSharesToCircle(string $circleId, string $userId): void
11188
throw new Exception('$initiator cannot be empty');
11289
}
11390

114-
$this->cache->clear('');
11591
$this->shareWrapperRequest->deleteSharesToCircle($circleId, $userId);
11692
}
11793

@@ -120,7 +96,6 @@ public function deleteUserSharesToCircle(string $circleId, string $userId): void
12096
* @param string $circleId
12197
*/
12298
public function deleteAllSharesToCircle(string $circleId): void {
123-
$this->cache->clear('');
12499
$this->shareWrapperRequest->deleteSharesToCircle($circleId, '');
125100
}
126101

@@ -210,22 +185,7 @@ public function getSharedWith(
210185
int $nodeId,
211186
?CircleProbe $probe
212187
): array {
213-
$key = $this->generateSharedWithCacheKey($federatedUser, $nodeId, $probe->getChecksum());
214-
215-
$cachedData = $this->cache->get($key);
216-
try {
217-
if (!is_string($cachedData)) {
218-
throw new InvalidItemException();
219-
}
220-
221-
return $this->deserializeList($cachedData, ShareWrapper::class);
222-
} catch (InvalidItemException $e) {
223-
}
224-
225-
$shares = $this->shareWrapperRequest->getSharedWith($federatedUser, $nodeId, $probe);
226-
$this->cache->set($key, json_encode($shares), self::CACHE_SHARED_WITH_TTL);
227-
228-
return $shares;
188+
return $this->shareWrapperRequest->getSharedWith($federatedUser, $nodeId, $probe);
229189
}
230190

231191

@@ -289,11 +249,6 @@ public function getChild(IShare $share, FederatedUser $federatedUser): ShareWrap
289249
}
290250

291251

292-
public function clearCache(string $singleId): void {
293-
$this->cache->clear($singleId);
294-
}
295-
296-
297252
/**
298253
* @param FederatedUser $federatedUser
299254
* @param IShare $share
@@ -304,7 +259,6 @@ public function clearCache(string $singleId): void {
304259
* @throws RequestBuilderException
305260
*/
306261
private function createChild(IShare $share, FederatedUser $federatedUser): ShareWrapper {
307-
$this->cache->clear('');
308262
$share->setSharedWith($federatedUser->getSingleId());
309263
$childId = $this->shareWrapperRequest->save($share, (int)$share->getId());
310264

0 commit comments

Comments
 (0)