diff options
Diffstat (limited to 'lib/private')
4 files changed, 3 insertions, 164 deletions
diff --git a/lib/private/Collaboration/Reference/File/FileReferenceProvider.php b/lib/private/Collaboration/Reference/File/FileReferenceProvider.php index 39cdb62b09a..9109cbf7377 100644 --- a/lib/private/Collaboration/Reference/File/FileReferenceProvider.php +++ b/lib/private/Collaboration/Reference/File/FileReferenceProvider.php @@ -24,10 +24,10 @@ declare(strict_types=1); namespace OC\Collaboration\Reference\File; -use OC\Collaboration\Reference\Reference; use OC\User\NoUserException; use OCP\Collaboration\Reference\IReference; use OCP\Collaboration\Reference\IReferenceProvider; +use OCP\Collaboration\Reference\Reference; use OCP\Files\InvalidPathException; use OCP\Files\IRootFolder; use OCP\Files\Node; diff --git a/lib/private/Collaboration/Reference/LinkReferenceProvider.php b/lib/private/Collaboration/Reference/LinkReferenceProvider.php index 36fbdd0b168..5597df1ca97 100644 --- a/lib/private/Collaboration/Reference/LinkReferenceProvider.php +++ b/lib/private/Collaboration/Reference/LinkReferenceProvider.php @@ -32,6 +32,7 @@ use OC\Security\RateLimiting\Limiter; use OC\SystemConfig; use OCP\Collaboration\Reference\IReference; use OCP\Collaboration\Reference\IReferenceProvider; +use OCP\Collaboration\Reference\Reference; use OCP\Files\AppData\IAppDataFactory; use OCP\Files\NotFoundException; use OCP\Http\Client\IClientService; diff --git a/lib/private/Collaboration/Reference/Reference.php b/lib/private/Collaboration/Reference/Reference.php deleted file mode 100644 index 22dc57782d8..00000000000 --- a/lib/private/Collaboration/Reference/Reference.php +++ /dev/null @@ -1,163 +0,0 @@ -<?php - -declare(strict_types=1); - -/** - * @copyright Copyright (c) 2022 Julius Härtl <jus@bitgrid.net> - * - * @author Julius Härtl <jus@bitgrid.net> - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -namespace OC\Collaboration\Reference; - -use OCP\Collaboration\Reference\IReference; - -class Reference implements IReference { - private string $reference; - - private bool $accessible = true; - - private ?string $title = null; - private ?string $description = null; - private ?string $imageUrl = null; - private ?string $contentType = null; - private ?string $url = null; - - private ?string $richObjectType = null; - private ?array $richObject = null; - - public function __construct(string $reference) { - $this->reference = $reference; - } - - public function getId(): string { - return $this->reference; - } - - public function setAccessible(bool $accessible): void { - $this->accessible = $accessible; - } - - public function getAccessible(): bool { - return $this->accessible; - } - - public function setTitle(string $title): void { - $this->title = $title; - } - - public function getTitle(): string { - return $this->title ?? $this->reference; - } - - public function setDescription(?string $description): void { - $this->description = $description; - } - - public function getDescription(): ?string { - return $this->description; - } - - public function setImageUrl(?string $imageUrl): void { - $this->imageUrl = $imageUrl; - } - - public function getImageUrl(): ?string { - return $this->imageUrl; - } - - public function setImageContentType(?string $contentType): void { - $this->contentType = $contentType; - } - - public function getImageContentType(): ?string { - return $this->contentType; - } - - public function setUrl(?string $url): void { - $this->url = $url; - } - - public function getUrl(): ?string { - return $this->url; - } - - public function setRichObject(string $type, ?array $richObject): void { - $this->richObjectType = $type; - $this->richObject = $richObject; - } - - public function getRichObjectType(): string { - if ($this->richObjectType === null) { - return 'open-graph'; - } - return $this->richObjectType; - } - - public function getRichObject(): array { - if ($this->richObject === null) { - return $this->getOpenGraphObject(); - } - return $this->richObject; - } - - public function getOpenGraphObject(): array { - return [ - 'id' => $this->getId(), - 'name' => $this->getTitle(), - 'description' => $this->getDescription(), - 'thumb' => $this->getImageUrl(), - 'link' => $this->getUrl() - ]; - } - - public static function toCache(IReference $reference): array { - return [ - 'id' => $reference->getId(), - 'title' => $reference->getTitle(), - 'imageUrl' => $reference->getImageUrl(), - 'imageContentType' => $reference->getImageContentType(), - 'description' => $reference->getDescription(), - 'link' => $reference->getUrl(), - 'accessible' => $reference->getAccessible(), - 'richObjectType' => $reference->getRichObjectType(), - 'richObject' => $reference->getRichObject(), - ]; - } - - public static function fromCache(array $cache): IReference { - $reference = new Reference($cache['id']); - $reference->setTitle($cache['title']); - $reference->setDescription($cache['description']); - $reference->setImageUrl($cache['imageUrl']); - $reference->setImageContentType($cache['imageContentType']); - $reference->setUrl($cache['link']); - $reference->setRichObject($cache['richObjectType'], $cache['richObject']); - $reference->setAccessible($cache['accessible']); - return $reference; - } - - public function jsonSerialize() { - return [ - 'richObjectType' => $this->getRichObjectType(), - 'richObject' => $this->getRichObject(), - 'openGraphObject' => $this->getOpenGraphObject(), - 'accessible' => $this->accessible - ]; - } -} diff --git a/lib/private/Collaboration/Reference/ReferenceManager.php b/lib/private/Collaboration/Reference/ReferenceManager.php index 304d693804f..a11d92fe2a9 100644 --- a/lib/private/Collaboration/Reference/ReferenceManager.php +++ b/lib/private/Collaboration/Reference/ReferenceManager.php @@ -29,6 +29,7 @@ use OC\Collaboration\Reference\File\FileReferenceProvider; use OCP\Collaboration\Reference\IReference; use OCP\Collaboration\Reference\IReferenceManager; use OCP\Collaboration\Reference\IReferenceProvider; +use OCP\Collaboration\Reference\Reference; use OCP\ICache; use OCP\ICacheFactory; use OCP\IURLGenerator; |