2 namespace wcf\system\moderation\queue
;
3 use wcf\data\moderation\queue\ModerationQueue
;
6 * Default interface for moderation queue handlers.
8 * @author Alexander Ebert
9 * @copyright 2001-2014 WoltLab GmbH
10 * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
11 * @package com.woltlab.wcf
12 * @subpackage system.moderation.queue
13 * @category Community Framework
15 interface IModerationQueueHandler
{
17 * Creates queue assignments for matching object ids.
19 * @param array<\wcf\data\moderation\queue\ModerationQueue> $queues
21 public function assignQueues(array $queues);
24 * Returns the container id for current object id, may return 0.
26 * @param integer $objectID
29 public function getContainerID($objectID);
32 * Validates object ids and returns orphaned queue ids.
34 * @param array<integer> $queues
35 * @return array<integer>
37 public function identifyOrphans(array $queues);
40 * Returns true if given object id is valid.
42 * @param integer $objectID
45 public function isValid($objectID);
48 * Populates object properties for viewing.
50 * @param array<\wcf\data\moderation\queue\ViewableModerationQueue> $queues
52 public function populate(array $queues);
55 * Removes affected content. It is up to the processing class to either
56 * soft-delete the content or remove it permanently.
58 * @param \wcf\data\moderation\queue\ModerationQueue $queue
59 * @param string $message
61 public function removeContent(ModerationQueue
$queue, $message);
64 * Removes queses from database, should only be called if the referenced
65 * object is permanently deleted.
67 * @param array<integer> $objectIDs
69 public function removeQueues(array $objectIDs);