clock->now() >= $cronJobExecution->getLastEnd()->add(new \DateInterval('P7D')); } public function getKey(): string { return self::KEY; } public function run(array $lastExecutionData): ?array { $lastDeleted = $lastExecutionData[self::LAST_DELETED_KEY] ?? 0; foreach ($this->storedObjectRepository->findByExpired($this->clock->now()) as $storedObject) { foreach ($storedObject->getVersions() as $version) { $this->messageBus->dispatch(new RemoveOldVersionMessage($version->getId())); } $lastDeleted = max($lastDeleted, $storedObject->getId()); } return [self::LAST_DELETED_KEY => $lastDeleted]; } }