KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > exoplatform > portlets > nav > component > UIFirstLevelMenu


1 /*
2  * Copyright 2001-2003 The eXo platform SARL All rights reserved.
3  * Please look at license.txt in info directory for more license detail.
4  */

5
6 package org.exoplatform.portlets.nav.component;
7
8 import java.util.ResourceBundle JavaDoc;
9 import javax.faces.context.ExternalContext;
10 import javax.portlet.ActionResponse;
11 import org.exoplatform.container.SessionContainer;
12 import org.exoplatform.faces.core.event.ExoActionEvent;
13 import org.exoplatform.faces.core.event.ExoActionListener;
14 import org.exoplatform.portal.session.RequestInfo;
15 import org.exoplatform.services.portletcontainer.pci.Output;
16 /**
17  * Created y the eXo platform team
18  * User: Benjamin Mestrallet
19  * Date: 6 sept. 2004
20  */

21 public class UIFirstLevelMenu extends UINavigation {
22   public static final String JavaDoc LOGOUT_ACTION = "logout";
23   private String JavaDoc logoutPath_;
24
25     public UIFirstLevelMenu(ResourceBundle JavaDoc res) throws Exception JavaDoc {
26         super(res) ;
27         setId("uiFirstLevelMenu");
28         setRendererType("FirstLevelMenuRenderer");
29     RequestInfo rinfo = (RequestInfo)SessionContainer.getComponent(RequestInfo.class);
30     logoutPath_ = rinfo.getContextPath() ;
31     addActionListener(LogoutActionListener.class , LOGOUT_ACTION) ;
32     }
33
34   public String JavaDoc getFamily( ) { return "org.exoplatform.portlets.nav.component.UIFirstLevelMenu" ; }
35
36   static public class LogoutActionListener extends ExoActionListener {
37         public void execute(ExoActionEvent event) throws Exception JavaDoc {
38           UIFirstLevelMenu comp = (UIFirstLevelMenu) event.getComponent() ;
39           ExternalContext eContext = comp.getFacesContext().getExternalContext();
40         ActionResponse response = (ActionResponse) eContext.getResponse();
41         response.addProperty(Output.LOGOUT, "true");
42         response.sendRedirect(comp.logoutPath_);
43         }
44     }
45 }
46
Popular Tags