IPortletDefinitionManager Interface

com.bea.netuix.application.manager
IPortletDefinitionManager Interface

public interface IPortletDefinitionManager

This is the primary interface for performing persistent store operations on PortletDefinitions. In general this interface provides coarse grain getters and fine grain setters.

It is important to note that all methods on this interface are fully internationalized and entitled. All titles and descriptions on the objects returned by these methods are internationalized to the preferred locale. Also, all methods are entitled, meaning if the caller does not have the required credentials the method may return a subset of the actual list or be unable to perform the specified function.

"Definitions" can be thought of as objects in the Library. Objects in the library are not associated to any one Desktop. In other words definitions can be placed on zero or more desktops and changes made in the Library (to the definitions) are cascaded down to object on the desktops. If you are only interested in effecting a single desktop then use the PortalCustomizationManager and make changes to the "Instances".


All Known Subinterfaces

PortletDefinitionManager

Method Summary

public PortletDefinition
clonePortletDefinition(CustomizationContext customizationContext, PortletDefinitionId portletDefinitionId)

Clone an existing portlet definition and all of it's localization resources.

public PortletDefinition
createPortletDefinition(CustomizationContext customizationContext, PortletDefinition portletDefinition)
Create a new portlet definition.
public void
deletePortletDefinition(CustomizationContext customizationContext, PortletDefinitionId portletDefinitionId)

Delete a portlet definition, but only if it is not used by other portlet instances.

public void
deletePortletDefinitionWithCascade(CustomizationContext customizationContext, PortletDefinitionId portletDefinitionId)

Delete a portlet definition and all portlet instances associated with this definition.

public PortletDefinition
getPortletDefinition(CustomizationContext customizationContext, PortletDefinitionId portletDefinitionId)

Getter for returning a single PortletDefinition object given a supplied portlet definition identifier.

public PortletDefinition
getPortletDefinition(CustomizationContext customizationContext, String definitionLabel, String webAppName)

Getter for returning a single PortletDefinition by Label.

public PortletDefinition
getPortletDefinitionFromFile(CustomizationContext customizationContext, String portletFile, String webAppName)

Return a portlet definitions with the portletFile equal to the supplied portlet file.

public PortletDefinition[]
getPortletDefinitions(CustomizationContext customizationContext, String webapp)

Getter for returning a list of all PortletDefinitions scoped to the supplied webapp.

public PortletDefinition[]
getPortletDefinitions(CustomizationContext customizationContext, String webapp, PortletDefinitionId firstPortletDefinitionId, int limit)

Returns PortletDefinitions in definitionId order (create order).

public PortletView
getPortletView(CustomizationContext customizationContext, PortletDefinitionId portletDefinitionId)

Getter for returning an immutable deep copy of a PortletView.

public PortletDefinition[]
searchPortletDefinitions(CustomizationContext customizationContext, String webapp, String partialPortletTitle, int limit)

Search for portlets given the supplied search string.

public void
updatePortletDefinition(CustomizationContext customizationContext, PortletDefinition portletDefinition)

Update the portlet definition with the new data.

Method Detail

clonePortletDefinition(CustomizationContext, PortletDefinitionId) Method

public PortletDefinition clonePortletDefinition(CustomizationContext customizationContext, 
                                                PortletDefinitionId portletDefinitionId)
throws RemoteException, ObjectNotFoundException, NotEntitledException

Clone an existing portlet definition and all of it's localization resources. The localization resources are slightly mutated with a '_' in front of them as to allow the administrator to distinguish from the original. Note: this method only clones the primary instance; any user instances derived from the original are not cloned.

Parameters

customizationContext
customization information such as preferred locales
portletDefinitionId
the id of the portlet definition to clone

Returns

a fully populated portlet definition object

Exceptions

RemoteException
ObjectNotFoundException
if the portletDefinitionId is bogus.
NotEntitledException
caller is not entitled to perform this action

createPortletDefinition(CustomizationContext, PortletDefinition) Method

public PortletDefinition createPortletDefinition(CustomizationContext customizationContext, 
                                                 PortletDefinition portletDefinition)
throws RemoteException, MissingDataException, NotEntitledException, DuplicateObjectException
Create a new portlet definition.

Parameters

customizationContext
customization information such as preferred locales
portletDefinition
the object containing the data to create the new portlet definition with.

Returns

a fully populated portlet definition object

Exceptions

RemoteException
MissingDataException
the pade definition object supplied is missing some vital data.
NotEntitledException
caller is not entitled to perform this action
DuplicateObjectException
if the supplied portlet's definition label is already in the database.

deletePortletDefinition(CustomizationContext, PortletDefinitionId) Method

public void deletePortletDefinition(CustomizationContext customizationContext, 
                                    PortletDefinitionId portletDefinitionId)
throws RemoteException, ObjectNotFoundException, ObjectInUseException, NotEntitledException

Delete a portlet definition, but only if it is not used by other portlet instances.

Parameters

customizationContext
customization information such as preferred locales
portletDefinitionId
the id of the portlet definition to delete.

Exceptions

RemoteException
ObjectNotFoundException
if the portletDefinitionId is bogus
ObjectInUseException
if portlet instances are currently using this portlet definition
NotEntitledException
the caller is not entitled to perform this operation.

Related Topics

IPortletDefinitionManager.deletePortletDefinitionWithCascade(CustomizationContext, PortletDefinitionId)


deletePortletDefinitionWithCascade(CustomizationContext, PortletDefinitionId) Method

public void deletePortletDefinitionWithCascade(CustomizationContext customizationContext, 
                                               PortletDefinitionId portletDefinitionId)
throws RemoteException, ObjectNotFoundException, NotEntitledException

Delete a portlet definition and all portlet instances associated with this definition.

Parameters

customizationContext
customization information such as preferred locales
portletDefinitionId
the id of the portlet definition to delete.

Exceptions

RemoteException
ObjectNotFoundException
if the portletDefinitionId is bogus
NotEntitledException
the caller is not entitled to perform this operation.

Related Topics

IPortletDefinitionManager.deletePortletDefinition(CustomizationContext, PortletDefinitionId)


getPortletDefinition(CustomizationContext, PortletDefinitionId) Method

public PortletDefinition getPortletDefinition(CustomizationContext customizationContext, 
                                              PortletDefinitionId portletDefinitionId)
throws RemoteException

Getter for returning a single PortletDefinition object given a supplied portlet definition identifier.

Parameters

customizationContext
customization information such as preferred locales
portletDefinitionId
the unique portlet definition identifier.

Returns

a PortletDefinition object fully populated and internationalized, otherwise, null if the object does not exist.

Exceptions

RemoteException

getPortletDefinition(CustomizationContext, String, String) Method

public PortletDefinition getPortletDefinition(CustomizationContext customizationContext, 
                                              String definitionLabel, 
                                              String webAppName)
throws RemoteException

Getter for returning a single PortletDefinition by Label. The webAppName name is the deployed name of the module, and is often the name of the WAR file or directory, although this is not always the case. This name is that name given in config.xml as the Name of the WebAppComponent element (and thus WebAppComponentMBean's Name attribute). Note that this name is not the name of the URL context root.

Parameters

customizationContext
customization information such as preferred locales
definitionLabel
the unique definitionLabel for the portlet. this is an optional label that the developer can set.
webAppName
the webapp this portlet is scoped to.

Returns

a PortletDefinition object fully populated and internationalized, otherwise, null if the object does not exist.

Exceptions

RemoteException

getPortletDefinitionFromFile(CustomizationContext, String, String) Method

public PortletDefinition getPortletDefinitionFromFile(CustomizationContext customizationContext, 
                                                      String portletFile, 
                                                      String webAppName)
throws RemoteException

Return a portlet definitions with the portletFile equal to the supplied portlet file. The webAppName name is the deployed name of the module, and is often the name of the WAR file or directory, although this is not always the case. This name is that name given in config.xml as the Name of the WebAppComponent element (and thus WebAppComponentMBean's Name attribute). Note that this name is not the name of the URL context root.

Returns

a portlet definition, if no portlet matched then null

Exceptions

RemoteException

Related Topics

ApplicationHelper.getWebAppName(ServletContext)


getPortletDefinitions(CustomizationContext, String) Method

public PortletDefinition[] getPortletDefinitions(CustomizationContext customizationContext, 
                                               String webapp)
throws RemoteException

Getter for returning a list of all PortletDefinitions scoped to the supplied webapp.

Parameters

customizationContext
customization information such as preferred locales
webapp
the web application these portlet definitions are scoped to.

Returns

an array of PortletDefinition objects if they exist, otherwise, an empty array.

Exceptions

RemoteException

Related Topics

PortletDefinition


getPortletDefinitions(CustomizationContext, String, PortletDefinitionId, int) Method

public PortletDefinition[] getPortletDefinitions(CustomizationContext customizationContext, 
                                               String webapp, 
                                               PortletDefinitionId firstPortletDefinitionId, 
                                               int limit)
throws RemoteException

Returns PortletDefinitions in definitionId order (create order). Starting with the supplied definitionId and limiting the result set to size limit If fewer PortletDefinitions exist than limit, then a smaller result set will be returned. If no definitions are found an empty array is returned. To start at the beginning of the list specify null as the portletDefinitionId. To retrieve from the end of the list and back specify null as the portletDefinitionId and a negative limit. To retrieve all the portletDefinitions in the database supply a limit of 0.
Implementation has to ensure that repeated calls to this method return PortletDefinitions in a consistent order.

Parameters

customizationContext
customization information such as preferred locales.
webapp
the web application these portlet definitions are scoped to.
firstPortletDefinitionId
optional parameter to indicate where the list should start.
limit
the maximum result set size. Note the limit may be negative indicating a reverse sort order. For all the records specify a limit of zero. Note: some elements may be pruned because of entitlements.

Returns

array of PortletDefinitions no greater than limit in size.

Exceptions

RemoteException

getPortletView(CustomizationContext, PortletDefinitionId) Method

public PortletView getPortletView(CustomizationContext customizationContext, 
                                  PortletDefinitionId portletDefinitionId)
throws RemoteException

Getter for returning an immutable deep copy of a PortletView. The PortletView object, unlike the PortletDefinition or the PortletInstance objects contains a full set of references to all child portlets, portlets and so on. The PortletView object however is immutable.

Parameters

customizationContext
customization information such as preferred locales
portletDefinitionId
the unique portletDefinitionId.

Returns

an immutable deep copy PortletView object if one exist, otherwise null.

Exceptions

RemoteException

searchPortletDefinitions(CustomizationContext, String, String, int) Method

public PortletDefinition[] searchPortletDefinitions(CustomizationContext customizationContext, 
                                                  String webapp, 
                                                  String partialPortletTitle, 
                                                  int limit)
throws RemoteException

Search for portlets given the supplied search string. Portlets with titles matching the supplied pattern will be returned. No more than limit results will be returned, however a smaller number may be returned. Implementation has to ensure that repeated calls to this method return PortletDefinitions in a consistent order.

Parameters

customizationContext
customization information such as preferred locales.
webapp
the web application these portlet definitions are scoped to.
partialPortletTitle
the search string for portlet title match. Note: this string may contain special '*' and '?' characters, where '*' matches any characters and '?' matches any single character.
limit
the maximum result set size. Note the limit may be negative indicating a reverse sort order. For all the records specify a limit of zero. Note: some elements may be pruned because of entitlements.

Returns

array of PortletDefinitions no greater than limit in size.

Exceptions

RemoteException

updatePortletDefinition(CustomizationContext, PortletDefinition) Method

public void updatePortletDefinition(CustomizationContext customizationContext, 
                                    PortletDefinition portletDefinition)
throws RemoteException, ObjectNotFoundException, NotEntitledException

Update the portlet definition with the new data.

Parameters

customizationContext
customization information such as preferred locales
portletDefinition
the portlet definition containing the new data

Exceptions

RemoteException
ObjectNotFoundException
if the LocalizationIntersectionId in the LocalizationResource is bogus.
NotEntitledException