Move any circles API usage to internal service

Signed-off-by: Julius Härtl <jus@bitgrid.net>
This commit is contained in:
Julius Härtl
2021-12-29 16:09:24 +01:00
parent bfc8222e6f
commit eaf6defe59
6 changed files with 60 additions and 50 deletions

View File

@@ -24,6 +24,7 @@
namespace OCA\Deck\Db;
use OC\Cache\CappedMemoryCache;
use OCA\Deck\Service\CirclesService;
use OCP\AppFramework\Db\DoesNotExistException;
use OCP\AppFramework\Db\QBMapper;
use OCP\DB\QueryBuilder\IQueryBuilder;
@@ -38,10 +39,9 @@ class BoardMapper extends QBMapper implements IPermissionMapper {
private $stackMapper;
private $userManager;
private $groupManager;
private $circlesService;
private $logger;
private $circlesEnabled;
/** @var CappedMemoryCache */
private $userBoardCache;
/** @var CappedMemoryCache */
@@ -54,6 +54,7 @@ class BoardMapper extends QBMapper implements IPermissionMapper {
StackMapper $stackMapper,
IUserManager $userManager,
IGroupManager $groupManager,
CirclesService $circlesService,
LoggerInterface $logger
) {
parent::__construct($db, 'deck_boards', Board::class);
@@ -62,12 +63,11 @@ class BoardMapper extends QBMapper implements IPermissionMapper {
$this->stackMapper = $stackMapper;
$this->userManager = $userManager;
$this->groupManager = $groupManager;
$this->circlesService = $circlesService;
$this->logger = $logger;
$this->userBoardCache = new CappedMemoryCache();
$this->boardCache = new CappedMemoryCache();
$this->circlesEnabled = \OC::$server->getAppManager()->isEnabledForUser('circles');
}
@@ -315,12 +315,7 @@ class BoardMapper extends QBMapper implements IPermissionMapper {
public function findAllByCircles(string $userId, ?int $limit = null, ?int $offset = null, ?int $since = null,
bool $includeArchived = true, ?int $before = null, ?string $term = null) {
if (!$this->circlesEnabled) {
return [];
}
$circles = array_map(function ($circle) {
return $circle->getUniqueId();
}, \OCA\Circles\Api\v1\Circles::joinedCircles($userId, true));
$circles = $this->circlesService->getUserCircles($userId);
if (count($circles) === 0) {
return [];
}
@@ -449,11 +444,11 @@ class BoardMapper extends QBMapper implements IPermissionMapper {
return null;
}
if ($acl->getType() === Acl::PERMISSION_TYPE_CIRCLE) {
if (!$this->circlesEnabled) {
if (!$this->circlesService->isCirclesEnabled()) {
return null;
}
try {
$circle = \OCA\Circles\Api\v1\Circles::detailsCircle($acl->getParticipant(), true);
$circle = $this->circlesService->getCircle($acl->getParticipant());
if ($circle) {
return new Circle($circle);
}