All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.portlet.PortletURL Maven / Gradle / Ivy

/*  Licensed to the Apache Software Foundation (ASF) under one
 *  or more contributor license agreements.  See the NOTICE file
 *  distributed with this work for additional information
 *  regarding copyright ownership.  The ASF licenses this file
 *  to you 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.
 */
/*
 * NOTE: this source code is based on an early draft version of JSR 286 and not intended for product
 * implementations. This file may change or vanish in the final version of the JSR 286 specification.
 */
/*
 * This source code implements specifications defined by the Java
 * Community Process. In order to remain compliant with the specification
 * DO NOT add / change / or delete method signatures!
 */
/**
  * Copyright 2006 IBM Corporation.
  */

package javax.portlet;



/**
 * The PortletURL interface represents a URL
 * that reference the portlet itself.
 * 

* A PortletURL is created through the RenderResponse * or ResourceResponse. * Parameters, a portlet mode, a window state and a security level * can be added to PortletURL objects. *

* There are two types of PortletURLs: *

    *
  • Action URLs, they are created with createActionURL, and * trigger an action request followed by a render request. *
  • Render URLs, they are created with createRenderURL, and * trigger a render request. *
*

* The string representation of a PortletURL does not need to be a valid * URL at the time the portlet is generating its content. It may contain * special tokens that will be converted to a valid URL, by the portal, * before the content is returned to the client. */ public interface PortletURL extends BaseURL { /** * Indicates the window state the portlet should be in, if this * portlet URL triggers a request. *

* A URL can not have more than one window state attached to it. * If more than one window state is set only the last one set * is attached to the URL. * * @param windowState * the portlet window state * * @exception WindowStateException * if the portlet cannot switch to this state, * because the portal does not support this state, the portlet has not * declared in its deployment descriptor that it supports this state, or the current * user is not allowed to switch to this state. * The PortletRequest.isWindowStateAllowed() method can be used * to check if the portlet can set a given window state. * @see PortletRequest#isWindowStateAllowed */ public void setWindowState (WindowState windowState) throws WindowStateException; /** * Indicates the portlet mode the portlet must be in, if this * portlet URL triggers a request. *

* A URL can not have more than one portlet mode attached to it. * If more than one portlet mode is set only the last one set * is attached to the URL. * * @param portletMode * the portlet mode * * @exception PortletModeException * if the portlet cannot switch to this mode, * because the portal does not support this mode, the portlet has not * declared in its deployment descriptor that it supports this mode for the current markup, * or the current user is not allowed to switch to this mode. * The PortletRequest.isPortletModeAllowed() method can be used * to check if the portlet can set a given portlet mode. * @see PortletRequest#isPortletModeAllowed */ public void setPortletMode (PortletMode portletMode) throws PortletModeException; /** * Returns the currently set portlet mode on this PortletURL. * * @since 2.0 * * @return the portlet mode, or null if none is set */ public PortletMode getPortletMode (); /** * Returns the currently set window state on this PortletURL. * * @since 2.0 * * @return the window state, or null if none is set */ public WindowState getWindowState (); /** * Removes the specified public render parameter. * The name must reference a public render parameter defined * in the portlet deployment descriptor under the * public-render-parameter element with the * identifier mapping to the parameter name. *

* Note that calling this method on a PortletURL of type * Action URL does not have any effect. * * @param name a String specifying * the name of the public render parameter to be removed * * @exception java.lang.IllegalArgumentException * if name is null. * @since 2.0 */ public void removePublicRenderParameter(String name); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy