javax.portlet.PortletURL Maven / Gradle / Ivy
Show all versions of portlet-api Show documentation
/* 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.
*/
/*
* 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!
*/
package javax.portlet;
import javax.portlet.annotations.PortletSerializable;
/**
* 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, MutableRenderState
{
/**
* 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.
*
* @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
*
* @deprecated As of version 3.0. Use {@link #getRenderParameters()} instead.
*/
@Deprecated
public void removePublicRenderParameter(String name);
/**
* Sets the value of a {@literal @}RenderStateScoped bean
* on an action or render URL.
* Calling this method copies the bean state to the URL so that the values are
* available to the portlet when the URL is activated.
*
* @param bean The {@literal @}RenderStateScoped bean
*
* @exception java.lang.IllegalArgumentException
* if the bean is not an {@literal @}RenderStateScoped bean.
*
* @see javax.portlet.annotations.RenderStateScoped
*/
public void setBeanParameter(PortletSerializable bean);
}