/* * Copyright 2000-2001,2004 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.jetspeed.services.rundata; import org.apache.jetspeed.portal.Portlet; import org.apache.jetspeed.om.profile.Profile; import org.apache.jetspeed.capability.CapabilityMap; import org.apache.jetspeed.services.statemanager.SessionState; import org.apache.turbine.services.rundata.TurbineRunData; import org.apache.jetspeed.om.security.JetspeedUser; /** * This interface extends the RunData interface with methods * specific to the needs of a Jetspeed like portal implementation. * * <note>Several of these properties may be put in the base RunData * interface in future releases of Turbine</note> * * @author <a href="mailto:raphael@apache.org">Rapha謖 Luta</a> * @version $Id: JetspeedRunData.java,v 1.10 2004/02/23 03:36:10 jford Exp $ */ public interface JetspeedRunData extends TurbineRunData { public int NORMAL = 0; public int CUSTOMIZE = 1; public int MAXIMIZE = 2; /** * Returns the Jetspeed User (same as getUser without cast) * * @return the current user. */ public JetspeedUser getJetspeedUser(); /** * Returns the portlet id referenced in this request * * @return the portlet id referenced or null */ public String getPortlet(); /** * Returns the portlet id (PEID) referenced in this request * * @return the portlet id (PEID) referenced or null */ public String getJs_peid(); /** * Sets the portlet id referenced for this request * * @param id the portlet id referenced in this request */ public void setPortlet(String id); /** * Sets the portlet id (PEID) referenced for this request * * @param id the portlet id (PEID) referenced in this request */ public void setJs_peid(String peid); /** * Returns the portlet id which should be customized for this request * * @return the portlet id being customized or null */ public Portlet getCustomized(); /** * Sets the portlet id to customize * * @param id the portlet id to customize or null; */ public void setCustomized(Portlet p); /** * Get the psml profile being customized. * @return the Profile being customized. */ public Profile getCustomizedProfile(); /** * Set the psml profile being customized. * @param profile The Profile being customized. */ public void setCustomizedProfile(Profile profile); /** * Clean up from customization */ public void cleanupFromCustomization(); /** * Returns the portlet id which should be maximized for this request * * @return the portlet id being maximized or null */ public int getMode(); /** * Sets the portlet id to maximize * * @param id the portlet id to maximize or null; */ public void setMode(int mode); /** * Sets the portlet id to maximize * * @param id the portlet id to maximize or null; */ public void setMode(String mode); /** * Returns the template path as requested from the parameters */ public String getRequestedTemplate(); /** * Sets the template path as requested from the parameters */ public void setRequestedTemplate(String id); /** * Returns the capability map for the user agent issuing this request * * @return a capability map objet */ public CapabilityMap getCapability(); /** * Gets the user portal profile for the current request * * @return a profile implementation for the current request */ public Profile getProfile(); /** * Sets the user portal profile for the current request * * @param profile a profile implementation for the current request */ public void setProfile(Profile profile); /** * Get the user id for the current user. * This method is provided as an abstraction to the very implementation * specific method of retrieving user ids in Turbine. * * @return String The current user's id. */ public String getUserId(); /** * Access an identifier for the current request's PageSession. * A PageSession is a specific portal page being viewed in a specific * user session (and perhaps, but not yet [@todo] in a specific browser window). * @return the identifier for the current request's PageSession. */ public String getPageSessionId(); /** * Access the current request's UserSession state object. * @return the current request's UserSession state object (may be null). */ public SessionState getUserSessionState(); /** * Access the current request's PageSession state object. * @return the current request's PageSession state object (may be null). */ public SessionState getPageSessionState(); /** * Access the current request's PortletSession state object. * @param id The Portlet's unique id. * @return the current request's PortletSession state object. (may be null). */ public SessionState getPortletSessionState(String id); }