public function deletePresence(Presence $presence)
 {
     try {
         $searchPresence = new Presence();
         $searchPresence->setUserId($presence->getUserId());
         $results = $this->dao->search($searchPresence);
         if (isset($results) && is_array($results) && count($results)) {
             $deletePresence = current($results);
             $this->dao->delete($deletePresence);
         }
     } catch (Exception $e) {
         throw new EyeDAOException('Unable to delete the Presence', 0, $e);
     }
 }
 /**
  * Notify to the System the user is disconnected
  *
  * @param Presence $presence
  */
 public function close(Presence $presence)
 {
     if (!isset($presence) || !$presence instanceof Presence) {
         throw new EyeInvalidArgumentException('Missing or invalid $presence');
     }
     //var_dump($presence->getUserId());
     $searchPresence = self::retrievePresencesByUsersId(array($presence->getUserId()));
     if ($searchPresence !== null && is_array($searchPresence) && count($searchPresence) == 1) {
         $searchPresence = current($searchPresence);
         // var_dump($searchPresence);
         $this->getProvider()->deletePresence($searchPresence);
         $this->notifyClosedPresence($searchPresence);
     }
 }