summaryrefslogtreecommitdiffstats
path: root/Http/Logout
diff options
context:
space:
mode:
authorAlexander <iam.asm89@gmail.com>2012-07-14 16:07:08 +0200
committerAlexander <iam.asm89@gmail.com>2012-07-14 16:07:08 +0200
commitb8e351355dbba100f7da975f31e9a6a73146b61a (patch)
treeb2a671e17f0c3e467d61849df4132ddc999efd31 /Http/Logout
parent46e7e6cf5307d8d336a08f0bc10f4d503602ecf8 (diff)
downloadsymfony-security-b8e351355dbba100f7da975f31e9a6a73146b61a.zip
symfony-security-b8e351355dbba100f7da975f31e9a6a73146b61a.tar.gz
symfony-security-b8e351355dbba100f7da975f31e9a6a73146b61a.tar.bz2
[Security] Extract default logout success handling logic
Diffstat (limited to 'Http/Logout')
-rw-r--r--Http/Logout/DefaultLogoutSuccessHandler.php47
1 files changed, 47 insertions, 0 deletions
diff --git a/Http/Logout/DefaultLogoutSuccessHandler.php b/Http/Logout/DefaultLogoutSuccessHandler.php
new file mode 100644
index 0000000..e06cb6d
--- /dev/null
+++ b/Http/Logout/DefaultLogoutSuccessHandler.php
@@ -0,0 +1,47 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Security\Http\Logout;
+
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\Security\Http\HttpUtils;
+use Symfony\Component\Security\Http\Logout\LogoutSuccessHandlerInterface;
+
+/**
+ * Default logout success handler will redirect users to a configured path.
+ *
+ * @author Fabien Potencier <fabien@symfony.com>
+ * @author Alexander <iam.asm89@gmail.com>
+ */
+class DefaultLogoutSuccessHandler implements LogoutSuccessHandlerInterface
+{
+ protected $httpUtils;
+ protected $targetUrl;
+
+ /**
+ * @param HttpUtils $httpUtils
+ * @param string $targetUrl
+ */
+ public function __construct(HttpUtils $httpUtils, $targetUrl = '/')
+ {
+ $this->httpUtils = $httpUtils;
+
+ $this->targetUrl = $targetUrl;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public function onLogoutSuccess(Request $request)
+ {
+ return $this->httpUtils->createRedirectResponse($request, $this->targetUrl);
+ }
+}