javax.portlet.PortletConfig 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 java.util.Map;
import javax.xml.namespace.QName;
/**
* The
* PortletConfig
interface provides the portlet with
* its configuration. The configuration holds information about the
* portlet that is valid for all users. The configuration is retrieved
* from the portlet definition in the deployment descriptor.
* The portlet can only read the configuration data.
*
* The configuration information contains the portlet name, the portlet
* initialization parameters, the portlet resource bundle and the portlet
* application context.
*
* @see Portlet
*/
public interface PortletConfig
{
/**
* Returns the name of the portlet.
*
* The name may be provided via server administration, assigned in the
* portlet application deployment descriptor with the portlet-name
* tag.
*
* @return the portlet name
*/
public String getPortletName ();
/**
* Returns the PortletContext
of the portlet application
* the portlet is in.
*
* @return a PortletContext
object, used by the
* caller to interact with its portlet container
*
* @see PortletContext
*/
public PortletContext getPortletContext ();
/**
* Gets the resource bundle for the given locale based on the
* resource bundle defined in the deployment descriptor
* with resource-bundle
tag or the inlined resources
* defined in the deployment descriptor.
*
* @param locale the locale for which to retrieve the resource bundle
*
* @return the resource bundle for the given locale
*
*/
public java.util.ResourceBundle getResourceBundle(java.util.Locale locale);
/**
* Returns a String containing the value of the named initialization parameter,
* or null if the parameter does not exist.
*
* @param name a String
specifying the name
* of the initialization parameter
*
* @return a String
containing the value
* of the initialization parameter
*
* @exception java.lang.IllegalArgumentException
* if name is null
.
*/
public String getInitParameter(java.lang.String name);
/**
* Returns the names of the portlet initialization parameters as an
* Enumeration
of String objects, or an empty Enumeration
if the
* portlet has no initialization parameters.
*
* @return an Enumeration
of String
* objects containing the names of the portlet
* initialization parameters, or an empty Enumeration
if the
* portlet has no initialization parameters.
*/
public java.util.Enumeration getInitParameterNames();
/**
* Returns the names of the public render parameters supported by the portlet
* as an Enumeration
of String
objects,
* or an empty Enumeration
if the
* portlet has not defined public render parameters.
*
* Public render parameters are defined in the portlet deployment descriptor
* with the supported-public-render-parameter
element.
*
* @return an Enumeration
of String
* objects containing the names of the public
* render parameters, or an empty Enumeration
if the
* portlet has not defined support for any public render parameters
* in the portlet deployment descriptor.
* @since 2.0
*/
public java.util.Enumeration getPublicRenderParameterNames();
/**
* Returns the default namespace for events and public render parameters.
* This namespace is defined in the portlet deployment descriptor
* with the default-namespace
element.
*
* If no default namespace is defined in the portlet deployment
* descriptor this methods returns the XML default namespace
* XMLConstants.NULL_NS_URI
.
*
* @return the default namespace defined in the portlet deployment
* descriptor, or XMLConstants.NULL_NS_URI
is non is
* defined.
* @since 2.0
*/
public java.lang.String getDefaultNamespace();
/**
* Returns the QNames of the publishing events supported by the portlet
* as an Enumeration
of QName
objects,
* or an empty Enumeration
if the
* portlet has not defined any publishing events.
*
* Publishing events are defined in the portlet deployment descriptor
* with the supported-publishing-event
element.
*
* Note that this call does not return any events published that have not been
* declared in the deployment descriptor as supported.
*
* If the event was defined using the name
element instead of
* the qname
element the defined default namespace
* is added as namespace for the returned QName.
*
* @return an Enumeration
of QName
* objects containing the names of the publishing events,
* or an empty Enumeration
if the
* portlet has not defined any support for publishing events in
* the deployment descriptor.
* @since 2.0
*/
public java.util.Enumeration getPublishingEventQNames();
/**
* Returns the QNames of the processing events supported by the portlet
* as an Enumeration
of QName
objects,
* or an empty Enumeration
if the
* portlet has not defined any processing events.
*
* Processing events are defined in the portlet deployment descriptor
* with the supported-processing-event
element.
*
* If the event was defined using the name
element instead of
* the qname
element the defined default namespace
* is added as namespace for the returned QName.
*
* @return an Enumeration
of QName
* objects containing the names of the processing events,
* or an empty Enumeration
if the
* portlet has not defined any support for processing events in
* the deployment descriptor.
* @since 2.0
*/
public java.util.Enumeration getProcessingEventQNames();
/**
* Returns the locales supported by the portlet
* as an Enumeration
of Locale
objects,
* or an empty Enumeration
if the
* portlet has not defined any supported locales.
*
* Supported locales are defined in the portlet deployment descriptor
* with the supported-locale
element.
*
* @return an Enumeration
of Locale
* objects containing the supported locales,
* or an empty Enumeration
if the
* portlet has not defined any supported locales in
* the deployment descriptor.
* @since 2.0
*/
public java.util.Enumeration getSupportedLocales();
/**
* Returns the container runtime options
* and values for this portlet.
*
* The portlet can set container runtime
* options in the portlet.xml
via the
* container-runtime-option
element with a name and a
* value on the application and portlet level.
* If a container runtime option is set on the portlet application
* level and on the portlet level with the same name the setting
* on the portlet level takes precedence and overwrites the one
* set on the portal application level.
*
* The map returned from this method will provide the subset the
* portlet container supports of the options the portlet has specified
* in the portlet.xml
. Options that the portlet container
* does not support will not be returned in this map.
*
* The map will contain name of the runtime option as key of type String
* and the runtime options as values of type String array (String[]
)
* with the values specified in the portlet.xml
deployment descriptor.
*
* @since 2.0
*
* @return an immutable Map
containing portlet
* container runtime options names as keys and the
* container runtime values as map values, or an empty Map
* if no portlet container runtime options are set
* in the portlet.xml
or supported by this portlet container.
* The keys in the map are of type String. The values in the map are of type
* String array (String[]
).
*/
public java.util.Map getContainerRuntimeOptions();
/**
*
* Returns an Enumeration
of PortletMode objects that are defined
* for the portlet for the given MIME type.
*
* Note that a supported portlet mode may not be allowed in all situations
* due to security or other reasons. To
* determine whether a portlet mode is allowed during a request, use the
* {@link PortletRequest#isPortletModeAllowed(PortletMode)} method.
* To determine which portlet modes are supported by the portal, use
* {@link PortalContext#getSupportedPortletModes()}
*
*
* @param mimeType MIME type
*
* @since 3.0
*
* @see PortletMode
* @see PortletRequest#isPortletModeAllowed(PortletMode)
* @see PortalContext#getSupportedPortletModes()
*
* @return an Enumeration
of PortletMode
* objects containing the defined and supported portlet modes.
*/
public java.util.Enumeration getPortletModes(String mimeType);
/**
*
* Returns an Enumeration
of WindowState objects that are defined
* for the portlet for the given MIME type.
*
* Note that a supported window state may not be allowed in all situations
* due to security or other reasons. To
* determine whether a window state is allowed during a request, use the
* {@link PortletRequest#isWindowStateAllowed(WindowState)} method.
* To determine which window states are supported by the portal, use
* {@link PortalContext#getSupportedWindowStates()}.
*
*
* @param mimeType MIME type
*
* @since 3.0
*
* @see WindowState
* @see PortletRequest#isWindowStateAllowed(WindowState)
* @see PortalContext#getSupportedWindowStates()
*
* @return an Enumeration
of WindowState
* objects containing the defined and supported window states.
*/
public java.util.Enumeration getWindowStates(String mimeType);
/**
*
* Returns a Map of public render parameter names to their qualified names.
* The names are the values returned by the
* {@link PortletConfig#getPublicRenderParameterNames()} method.
* The values are the QName
values associated with the public
* render parameter.
*
* If the public render parameter is specified in the portlet descriptor
* using the <.name>.
tag rather than the
* <.qname>.
tag, the QName is built from the default namespace
* from the deployment descriptor
* together with the value from the <.name>.
tag.
*
*
* @since 3.0
*
* @see PortletConfig#getPublicRenderParameterNames()
*
* @return an Map
of String
to QName
*/
public Map getPublicRenderParameterDefinitions();
}