Author: reto
Date: Fri Mar 5 16:55:10 2010
New Revision: 919492
URL: http://svn.apache.org/viewvc?rev=919492&view=rev
Log:
CLEREZZA-149: redirecting to referer (if available) after logout
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogout.java
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogout.java
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogout.java?rev=919492&r1=919491&r2=919492&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogout.java
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogout.java
Fri Mar 5 16:55:10 2010
@@ -18,7 +18,10 @@
*/
package org.apache.clerezza.platform.security.auth.cookie;
+import java.net.URI;
+import java.net.URL;
import javax.ws.rs.GET;
+import javax.ws.rs.HeaderParam;
import javax.ws.rs.Path;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.HttpHeaders;
@@ -71,10 +74,16 @@
}
@GET
- public Response logout(@Context UriInfo uriInfo) {
- TrailingSlash.enforcePresent(uriInfo);
- ResponseBuilder responseBuilder = Response.fromResponse(
-
RedirectUtil.createSeeOtherResponse("../logout/success", uriInfo));
+ public Response logout(@Context UriInfo uriInfo,
+ @HeaderParam("Referer") URI referer) {
+ TrailingSlash.enforceNotPresent(uriInfo);
+ ResponseBuilder responseBuilder;
+ if (referer != null) {
+ responseBuilder = Response.seeOther(referer);
+ } else {
+ responseBuilder = Response.fromResponse(
+
RedirectUtil.createSeeOtherResponse("logout/success", uriInfo));
+ }
responseBuilder.header(HttpHeaders.SET_COOKIE,
getLogoutCookie());
return responseBuilder.build();
}