diff options
author | Joas Schilling <nickvergessen@owncloud.com> | 2016-02-01 11:48:46 +0100 |
---|---|---|
committer | Joas Schilling <nickvergessen@owncloud.com> | 2016-02-02 09:57:42 +0100 |
commit | 591613fce222d1902ac9d981ca6ae99e5aea23cc (patch) | |
tree | d4e015b6397b2e46f99b2508c40190c90216b5b0 /lib/public/systemtag | |
parent | 9861a7f6ccde73ad551a1d75b36baed3f9edf530 (diff) | |
download | nextcloud-server-591613fce222d1902ac9d981ca6ae99e5aea23cc.tar.gz nextcloud-server-591613fce222d1902ac9d981ca6ae99e5aea23cc.zip |
Dispatch some events when tags are un-/assigned
Diffstat (limited to 'lib/public/systemtag')
-rw-r--r-- | lib/public/systemtag/mapperevent.php | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/lib/public/systemtag/mapperevent.php b/lib/public/systemtag/mapperevent.php new file mode 100644 index 00000000000..e05a5ce09c8 --- /dev/null +++ b/lib/public/systemtag/mapperevent.php @@ -0,0 +1,93 @@ +<?php +/** + * @author Joas Schilling <nickvergessen@owncloud.com> + * + * @copyright Copyright (c) 2016, ownCloud, Inc. + * @license AGPL-3.0 + * + * This code is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License, version 3, + * as published by the Free Software Foundation. + * + * 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, version 3, + * along with this program. If not, see <http://www.gnu.org/licenses/> + * + */ + +namespace OCP\SystemTag; + +use Symfony\Component\EventDispatcher\Event; + +/** + * Class MapperEvent + * + * @package OCP\SystemTag + * @since 9.0.0 + */ +class MapperEvent extends Event { + + const EVENT_ASSIGN = 'OCP\SystemTag\ISystemTagObjectMapper::assignTags'; + const EVENT_UNASSIGN = 'OCP\SystemTag\ISystemTagObjectMapper::unassignTags'; + + /** @var string */ + protected $event; + /** @var string */ + protected $objectType; + /** @var string */ + protected $objectId; + /** @var int[] */ + protected $tags; + + /** + * DispatcherEvent constructor. + * + * @param string $event + * @param string $objectType + * @param string $objectId + * @param int[] $tags + * @since 9.0.0 + */ + public function __construct($event, $objectType, $objectId, array $tags) { + $this->event = $event; + $this->objectType = $objectType; + $this->objectId = $objectId; + $this->tags = $tags; + } + + /** + * @return string + * @since 9.0.0 + */ + public function getEvent() { + return $this->event; + } + + /** + * @return string + * @since 9.0.0 + */ + public function getObjectType() { + return $this->objectType; + } + + /** + * @return string + * @since 9.0.0 + */ + public function getObjectId() { + return $this->objectId; + } + + /** + * @return int[] + * @since 9.0.0 + */ + public function getTags() { + return $this->tags; + } +} |