public function cleanupCommand()
 {
     $settings = $this->getSettings();
     $obsoleteAfterHours = 24;
     if (TRUE === isset($settings['obsoleteAfterHours'])) {
         $obsoleteAfterHours = $settings['obsoleteAfterHours'];
     }
     $subscriptions = $this->subscriptionRepository->findObsolete($obsoleteAfterHours);
     foreach ($subscriptions as $subscription) {
         $this->subscriptionRepository->remove($subscription);
     }
     $this->response->setContent('Obsolete subscriptions: ' . $subscriptions->count() . LF);
     $this->response->send();
 }
 /**
  * @param string $email
  * @param string $token
  * @return bool
  */
 public function remove($email, $token)
 {
     $subscription = $this->subscriptionRepository->findByEmailAndToken($email, $token, TRUE);
     if (NULL === $subscription) {
         return FALSE;
     }
     $this->subscriptionRepository->remove($subscription);
     $this->emailService->sendUnsubscribeConfirmationMail($subscription);
     $this->emailService->sendControlMail('unsubscribe', $subscription);
     return TRUE;
 }