diff --git a/src/UnicaenApp/ORM/Event/Listeners/HistoriqueListener.php b/src/UnicaenApp/ORM/Event/Listeners/HistoriqueListener.php
index 4df96d9d835362c7adaffaac164acac60f84b46c..ef1fd09b0824c779b30a0ad6c7f7104994665a71 100644
--- a/src/UnicaenApp/ORM/Event/Listeners/HistoriqueListener.php
+++ b/src/UnicaenApp/ORM/Event/Listeners/HistoriqueListener.php
@@ -1,6 +1,7 @@
<?php
namespace UnicaenApp\ORM\Event\Listeners;
+use RuntimeException;
use UnicaenAuth\Entity\Db\AbstractUser;
use Zend\ServiceManager\ServiceLocatorAwareInterface;
use Zend\ServiceManager\ServiceLocatorAwareTrait;
@@ -8,14 +9,18 @@ use Doctrine\ORM\Event\LifecycleEventArgs;
use Doctrine\ORM\Event\PreUpdateEventArgs;
use Doctrine\ORM\Events;
use Doctrine\Common\EventSubscriber;
-use Common\Exception\RuntimeException;
use UnicaenApp\Entity\HistoriqueAwareInterface;
/**
- * Listener Doctrine permettant l'ajout automatique de l'heure de création/modification
- * et de l'auteur de création/modification de toute entité avant qu'elle soit persistée.
+ * Listener Doctrine.
+ *
+ * Modifie automatiquement l'heure et l'auteur de la création/modification
+ * de tout enregistrement dont la classe implémente HistoriqueAwareInterface.
+ *
+ * Déclenchement : avant que l'enregistrement ne soit persisté (création) ou mis à jour (update).
*
* @author Bertrand GAUTHIER <bertrand.gauthier at unicaen.fr>
+ * @see HistoriqueAwareInterface
*/
class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterface
{
@@ -26,35 +31,30 @@ class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterfac
*/
protected $identity;
-
-
/**
*
* @param LifecycleEventArgs $args
*
- * @return type
- * @throws RuntimeException
+ * @return void
+ * @throws RuntimeException Aucun utilisateur connecté disponible pour la gestion de l'historique
*/
protected function updateHistorique(LifecycleEventArgs $args)
{
- $em = $args->getEntityManager();
$entity = $args->getEntity();
- $user = null;
// l'entité doit implémenter l'interface requise
- if (!$entity instanceof HistoriqueAwareInterface) {
+ if (! $entity instanceof HistoriqueAwareInterface) {
return;
}
- /* @var $entity \UnicaenApp\Entity\HistoriqueAwareInterface */
// l'utilisateur connecté sera l'auteur de la création/modification
+ $user = null;
if (($identity = $this->getIdentity())) {
if (isset($identity['db']) && $identity['db'] instanceof AbstractUser) {
$user = $identity['db'];
/* @var $user AbstractUser */
}
}
-
if (null === $user) {
throw new RuntimeException("Aucun utilisateur connecté disponible pour la gestion de l'historique.");
}
@@ -86,8 +86,6 @@ class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterfac
}
}
-
-
/**
* @param LifecycleEventArgs $args
*/
@@ -96,8 +94,6 @@ class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterfac
$this->updateHistorique($args);
}
-
-
/**
* @param PreUpdateEventArgs $args
*/
@@ -106,13 +102,11 @@ class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterfac
$this->updateHistorique($args);
}
-
-
/**
+ * Injecte l'identité authentifiée courante.
*
* @param mixed $identity
- *
- * @return \Common\ORM\Event\Listeners\Histo
+ * @return self
*/
public function setIdentity($identity)
{
@@ -121,9 +115,8 @@ class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterfac
return $this;
}
-
-
/**
+ * Retourne l'identité authentifiée courante.
*
* @return mixed
*/
@@ -139,8 +132,6 @@ class HistoriqueListener implements EventSubscriber, ServiceLocatorAwareInterfac
return $this->identity;
}
-
-
/**
* {@inheritdoc}
*/