From 5ca0247c3e755fe462e1341f3a87aea69602086c Mon Sep 17 00:00:00 2001
From: David Surville <david.surville@unicaen.fr>
Date: Wed, 3 Jul 2019 11:22:48 +0200
Subject: [PATCH] =?UTF-8?q?Adapter=20Cas=20:=20possibilit=C3=A9=20d'inject?=
 =?UTF-8?q?er=20tout=20type=20de=20router?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/UnicaenAuth/Authentication/Adapter/Cas.php | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/src/UnicaenAuth/Authentication/Adapter/Cas.php b/src/UnicaenAuth/Authentication/Adapter/Cas.php
index a4e0748..fb3e21a 100644
--- a/src/UnicaenAuth/Authentication/Adapter/Cas.php
+++ b/src/UnicaenAuth/Authentication/Adapter/Cas.php
@@ -14,7 +14,8 @@ use Zend\EventManager\EventInterface;
 use Zend\EventManager\EventManager;
 use Zend\EventManager\EventManagerAwareInterface;
 use Zend\EventManager\EventManagerInterface;
-use Zend\Router\Http\TreeRouteStack;
+use Zend\Router\RouteInterface;
+use Zend\Router\RouteStackInterface;
 use ZfcUser\Authentication\Adapter\AbstractAdapter;
 use ZfcUser\Authentication\Adapter\ChainableAdapter;
 
@@ -64,14 +65,14 @@ class Cas extends AbstractAdapter implements EventManagerAwareInterface
     }
 
     /**
-     * @var TreeRouteStack
+     * @var RouteInterface
      */
     private $router;
 
     /**
-     * @param TreeRouteStack $router
+     * @param RouteInterface $router
      */
-    public function setRouter(TreeRouteStack $router)
+    public function setRouter(RouteInterface $router)
     {
         $this->router = $router;
     }
@@ -264,10 +265,14 @@ class Cas extends AbstractAdapter implements EventManagerAwareInterface
     }
 
     /**
-     * @param TreeRouteStack $router
+     * @param RouteInterface $router
      */
-    public function reconfigureRoutesForCasAuth(TreeRouteStack $router)
+    public function reconfigureRoutesForCasAuth(RouteInterface $router)
     {
+        if(!$router instanceof RouteStackInterface) {
+            return;
+        }
+
         $router->addRoutes([
             // remplace les routes existantes (cf. config du module)
             'zfcuser' => [
-- 
GitLab