Author: mir
Date: Mon Feb  8 14:29:26 2010
New Revision: 907669

URL: http://svn.apache.org/viewvc?rev=907669&view=rev
Log:
CLEREZZA-92: there is now an option on the login page to enable the client to 
stay logged in even after restarting browser

Modified:
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieAuthentication.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogin.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/resources/org/apache/clerezza/platform/security/auth/cookie/login_naked.xhtml

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieAuthentication.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieAuthentication.java?rev=907669&r1=907668&r2=907669&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieAuthentication.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieAuthentication.java
 Mon Feb  8 14:29:26 2010
@@ -123,7 +123,6 @@
        @Override
        public boolean writeLoginResponse(Request request,Response response, 
Throwable cause) throws HandlerException{
 
-               System.out.println(request.getMethod());
                if (!request.getMethod().equals(Method.GET)) {
                        return false;
                }

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogin.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogin.java?rev=907669&r1=907668&r2=907669&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogin.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/java/org/apache/clerezza/platform/security/auth/cookie/CookieLogin.java
 Mon Feb  8 14:29:26 2010
@@ -27,6 +27,7 @@
 import java.security.PrivilegedAction;
 import java.util.Iterator;
 import javax.security.auth.Subject;
+import javax.ws.rs.DefaultValue;
 import javax.ws.rs.FormParam;
 import javax.ws.rs.GET;
 import javax.ws.rs.POST;
@@ -36,6 +37,7 @@
 import javax.ws.rs.core.Context;
 import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.NewCookie;
 
 import javax.ws.rs.core.Response;
 import javax.ws.rs.core.Response.ResponseBuilder;
@@ -68,7 +70,6 @@
 import org.wymiwyg.commons.util.Base64;
 import org.wymiwyg.commons.util.dirbrowser.PathNode;
 import org.wymiwyg.wrhapi.HandlerException;
-import org.wymiwyg.wrhapi.util.Cookie;
 
 /**
  *
@@ -168,6 +169,7 @@
        public Object login(@FormParam("user") final String userName,
                        @FormParam("pass") final String password,
                        @FormParam("referer") final String referer,
+                       @DefaultValue("false") @FormParam("stayloggedin") final 
Boolean stayLoggedIn,
                        @Context final UriInfo uriInfo) {
                return AccessController.doPrivileged(new 
PrivilegedAction<Object>() {
                        @Override
@@ -183,7 +185,7 @@
                                                        
RedirectUtil.createSeeOtherResponse(
                                                        referer, uriInfo));
                                                
responseBuilder.header(HttpHeaders.SET_COOKIE,
-                                                               
getLoginCookie(userName, password));
+                                                               
getLoginCookie(userName, password, stayLoggedIn));
                                                return responseBuilder.build();
                                        } else {
                                                
result.addProperty(LOGIN.message, failedMessage);
@@ -208,10 +210,15 @@
         * @param password
         * @return
         */
-       public static Cookie getLoginCookie(String userName, String password) {
+       public static NewCookie getLoginCookie(String userName, String password,
+                       Boolean stayLoggedIn) {
                String cookieString = userName + ":" + password;
-               Cookie cookie = new Cookie(AUTH_COOKIE_NAME, Base64.encode(
-                               cookieString.getBytes()));
+               int maxAge = -1;
+               if (stayLoggedIn) {
+                       maxAge = Integer.MAX_VALUE;
+               }
+               NewCookie cookie = new NewCookie(AUTH_COOKIE_NAME, 
Base64.encode(
+                               cookieString.getBytes()), null, null, null, 
maxAge, false);
                return cookie;
        }
 

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/resources/org/apache/clerezza/platform/security/auth/cookie/login_naked.xhtml
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/resources/org/apache/clerezza/platform/security/auth/cookie/login_naked.xhtml?rev=907669&r1=907668&r2=907669&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/resources/org/apache/clerezza/platform/security/auth/cookie/login_naked.xhtml
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.webapp.parent/org.apache.clerezza.platform.security.auth.cookie/src/main/resources/org/apache/clerezza/platform/security/auth/cookie/login_naked.xhtml
 Mon Feb  8 14:29:26 2010
@@ -12,6 +12,7 @@
                        <li><label>Password</label>
                                <input size="30" type="password" name="pass" 
value="" /></li>
                        <li>
+                               <input type="checkbox" value="true" 
name="stayloggedin" /><label class="tx-checkbox">Stay logged in</label>
                                <input type="submit" value="Log in" 
id="submitButton"></input>
                        </li>
                </ol>


Reply via email to