You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2005/01/03 17:27:43 UTC

svn commit: r124002 - /lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java

Author: andreas
Date: Mon Jan  3 08:27:42 2005
New Revision: 124002

URL: http://svn.apache.org/viewcvs?view=rev&rev=124002
Log:
added logout functionality
Modified:
   lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java

Modified: lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java
Url: http://svn.apache.org/viewcvs/lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java?view=diff&rev=124002&p1=lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java&r1=124001&p2=lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java&r2=124002
==============================================================================
--- lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java	(original)
+++ lenya/trunk/src/java/org/apache/lenya/cms/ac/Logout.java	Mon Jan  3 08:27:42 2005
@@ -17,16 +17,14 @@
 package org.apache.lenya.cms.ac;
 
 import java.util.Map;
+import java.util.Vector;
 
-import org.apache.lenya.ac.AccessControlException;
-import org.apache.lenya.cms.usecase.UsecaseException;
+import org.apache.lenya.ac.Identity;
 import org.apache.lenya.cms.admin.AccessControlUsecase;
-import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.context.ContextException;
-import org.apache.avalon.framework.context.Contextualizable;
 import org.apache.cocoon.components.ContextHelper;
 import org.apache.cocoon.environment.ObjectModelHelper;
 import org.apache.cocoon.environment.Request;
+import org.apache.cocoon.environment.Session;
 
 /**
  * Usecase to log a user out.
@@ -42,26 +40,33 @@
         super();
     }
 
-
-    /**
-     * Validates the request parameters.
-     * @throws UsecaseException if an error occurs.
-     */
-    void validate() throws UsecaseException {
-    }
-
     /**
-     * @see org.apache.lenya.cms.usecase.AbstractUsecase#doCheckExecutionConditions()
+     * @see org.apache.lenya.cms.usecase.AbstractUsecase#initParameters()
      */
-    protected void doCheckExecutionConditions() throws Exception {
-        validate();
+    protected void initParameters() {
+        super.initParameters();
+        Map objectModel = ContextHelper.getObjectModel(getContext());
+        Request request = ObjectModelHelper.getRequest(objectModel);
+        Session session = request.getSession(false);
+
+        if (session != null) {
+            Vector history = (Vector) session
+                    .getAttribute("org.apache.lenya.cms.cocoon.acting.History");
+            setParameter("history", history.toArray());
+        }
     }
-
+    
     /**
      * @see org.apache.lenya.cms.usecase.AbstractUsecase#doExecute()
      */
     protected void doExecute() throws Exception {
 
-   }
-
+        Map objectModel = ContextHelper.getObjectModel(getContext());
+        Request request = ObjectModelHelper.getRequest(objectModel);
+        Session session = request.getSession(false);
+
+        if (session != null) {
+            session.removeAttribute(Identity.class.getName());
+        }
+    }
 }

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org