aliasMapper = $aliasMapper; $this->mailboxMapper = $mailboxMapper; $this->messageMapper = $messageMapper; $this->collectedAddressMapper = $collectedAddressMapper; $this->tagMapper = $tagMapper; $this->messageRetentionMapper = $messageRetentionMapper; $this->messageSnoozeMapper = $messageSnoozeMapper; $this->mailAccountMapper = $mailAccountMapper; $this->timeFactory = $timeFactory; } public function cleanUp(LoggerInterface $logger): void { $task = (new PerformanceLogger( $this->timeFactory, $logger ))->start('clean up'); $this->mailAccountMapper->deleteProvisionedOrphanAccounts(); $task->step('delete orphan provisioned accounts'); $this->aliasMapper->deleteOrphans(); $task->step('delete orphan aliases'); $this->mailboxMapper->deleteOrphans(); $task->step('delete orphan mailboxes'); $this->messageMapper->deleteOrphans(); $task->step('delete orphan messages'); $this->collectedAddressMapper->deleteOrphans(); $task->step('delete orphan collected addresses'); $this->tagMapper->deleteOrphans(); $task->step('delete orphan tags'); $this->tagMapper->deleteDuplicates(); $task->step('delete duplicate tags'); $this->messageRetentionMapper->deleteOrphans(); $task->step('delete expired messages'); $this->messageSnoozeMapper->deleteOrphans(); $task->step('delete orphan snoozes'); $task->end(); } }