Merge pull request #18162 from nextcloud/enh/noid/url-fileentity
flow file entity to provide the internal URL
This commit is contained in:
commit
5a986f02a3
|
@ -26,6 +26,7 @@ namespace OCA\WorkflowEngine\Entity;
|
|||
|
||||
use OCP\EventDispatcher\Event;
|
||||
use OCP\EventDispatcher\GenericEvent;
|
||||
use OCP\Files\InvalidPathException;
|
||||
use OCP\Files\IRootFolder;
|
||||
use OCP\Files\Node;
|
||||
use OCP\Files\NotFoundException;
|
||||
|
@ -38,11 +39,12 @@ use OCP\SystemTag\ISystemTag;
|
|||
use OCP\SystemTag\ISystemTagManager;
|
||||
use OCP\SystemTag\MapperEvent;
|
||||
use OCP\WorkflowEngine\EntityContext\IDisplayText;
|
||||
use OCP\WorkflowEngine\EntityContext\IUrl;
|
||||
use OCP\WorkflowEngine\GenericEntityEvent;
|
||||
use OCP\WorkflowEngine\IEntity;
|
||||
use OCP\WorkflowEngine\IRuleMatcher;
|
||||
|
||||
class File implements IEntity, IDisplayText {
|
||||
class File implements IEntity, IDisplayText, IUrl {
|
||||
|
||||
private const EVENT_NAMESPACE = '\OCP\Files::';
|
||||
|
||||
|
@ -208,4 +210,14 @@ class File implements IEntity, IDisplayText {
|
|||
return $this->l10n->t('%s assigned %s to %s', $options);
|
||||
}
|
||||
}
|
||||
|
||||
public function getUrl(): string {
|
||||
try {
|
||||
return $this->urlGenerator->linkToRouteAbsolute('files.viewcontroller.showFile', ['fileid' => $this->getNode()->getId()]);
|
||||
} catch (InvalidPathException $e) {
|
||||
return '';
|
||||
} catch (NotFoundException $e) {
|
||||
return '';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue