mirror of
https://github.com/nextcloud/server.git
synced 2026-06-11 01:30:50 -04:00
refactor: adjust to unexposed searchBySystemTag
- in this backport we have to drop the breaking addition in \OCP\Files\Folder - this requires adjustments in check for the existance of the method but also in testing - another change in \OCP\SystemTag\ISystemTagManager can be applied as this interface is not implemented elsewhere Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
This commit is contained in:
parent
6256da1ade
commit
33b9ba5cd9
4 changed files with 8 additions and 2 deletions
|
|
@ -336,7 +336,7 @@ class FilesReportPlugin extends ServerPlugin {
|
|||
|
||||
// type check to ensure searchBySystemTag is available, it is not
|
||||
// exposed in API yet
|
||||
if (!empty($systemTagIds)) {
|
||||
if (!empty($systemTagIds) && method_exists($this->userFolder, 'searchBySystemTag')) {
|
||||
$tags = $this->tagManager->getTagsByIds($systemTagIds, $this->userSession->getUser());
|
||||
|
||||
// For we run DB queries per tag and require intersection, we cannot apply limit and offset for DB queries on multi tag search.
|
||||
|
|
|
|||
|
|
@ -114,6 +114,8 @@ class FilesReportPluginTest extends \Test\TestCase {
|
|||
|
||||
$this->userFolder = $this->getMockBuilder(Folder::class)
|
||||
->disableOriginalConstructor()
|
||||
->addMethods(['searchBySystemTag'])
|
||||
->onlyMethods(get_class_methods(Folder::class))
|
||||
->getMock();
|
||||
|
||||
$this->previewManager = $this->getMockBuilder(IPreview::class)
|
||||
|
|
|
|||
|
|
@ -448,6 +448,10 @@ class LazyFolder implements \OCP\Files\Folder {
|
|||
return $this->__call(__FUNCTION__, func_get_args());
|
||||
}
|
||||
|
||||
public function searchBySystemTag(string $tagName, string $userId, int $limit = 0, int $offset = 0): array {
|
||||
return $this->__call(__FUNCTION__, func_get_args());
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ interface ISystemTagManager {
|
|||
* @throws TagNotFoundException if at least one given tag ids did no exist
|
||||
* The message contains a json_encoded array of the ids that could not be found
|
||||
*
|
||||
* @since 9.0.0, optional parameter $user added in 28.0.0
|
||||
* @since 9.0.0, optional parameter $user added in 25.0.9
|
||||
*/
|
||||
public function getTagsByIds($tagIds, ?IUser $user = null): array;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue