© 2003 BEA Systems, Inc.

com.bea.netuix.application.manager
Interface IPortletInstanceManager

All Known Subinterfaces:
PortalCustomizationManager
All Known Implementing Classes:
PortalCustomizationManagerImpl

public interface IPortletInstanceManager

This is the primary interface for performing persistent store operations on PortletInstances. 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 prefered 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.


Method Summary
 PortletInstanceId createSuccessor(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PortletInstanceId portletInstanceId)
          Creates a successor instance and returns its instance ID.
 PortletInstance getPortletInstance(CustomizationContext customizationContext, PortletInstanceId portletInstanceId)
          Getter for returning a single PortletInstance.
 PortletView getPortletView(CustomizationContext customizationContext, PortletInstanceId portletInstanceId)
          Getter for returning an immutable deep copy of a PortletView.
 PortletInstanceId getPredecessor(CustomizationContext customizationContext, PortletInstanceId portletInstanceId)
          Returns the instance ID that the given instance is based on.
 PortletInstanceId[] getSuccessors(CustomizationContext customizationContext, PortletInstanceId portletInstanceId)
          Returns a list of successor instances.
 PortletInstance updatePortletInstance(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PortletInstance portletInstance)
          Update the portlet instance with the new data.
 PortletInstance updatePortletInstance(CustomizationContext customizationContext, PortletInstance portletInstance)
          Update the portlet instance outside the context of a desktop (in a Library).
 

Method Detail

getPortletView

public PortletView getPortletView(CustomizationContext customizationContext,
                                  PortletInstanceId portletInstanceId)
                           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 Locales and DesktopInstaceId
portletInstanceId - the unique portletInstanceId.
Returns:
an immutable deep copy PortletView object if one exist, otherwise null.
RemoteException

getPortletInstance

public PortletInstance getPortletInstance(CustomizationContext customizationContext,
                                          PortletInstanceId portletInstanceId)
                                   throws RemoteException

Getter for returning a single PortletInstance.

Parameters:
customizationContext - the prefered language, country and variant to which the titles and descriptions are returned.
Returns:
an fully populated PortletInstance object.
RemoteException
See Also:
PortletDefinition

updatePortletInstance

public PortletInstance updatePortletInstance(CustomizationContext customizationContext,
                                             DesktopDefinitionId desktopDefinitionId,
                                             PortletInstance portletInstance)
                                      throws RemoteException,
                                             ObjectNotFoundException,
                                             NotEntitledException

Update the portlet instance with the new data. If the portlet instance is the primary portlet instance then a new instance will be created specifically for this user or admin.

For an admin editing a portlet outside the context of a desktop (in a Library) you should use updatePortletInstance(PortletInstance)

.

Parameters:
desktopDefinitionId - the desktop context this instance is associated with.
portletInstance - the portlet instance containing the new data
Returns:
the new updated portlet instance, with possible a new portletInstanceId
Throws:
ObjectNotFoundException - if the PortletInstanceId in the PortletInstance, or desktopInstanceId is bogus.
RemoteException
NotEntitledException
See Also:
updatePortletInstance(CustomizationContext,PortletInstance)

updatePortletInstance

public PortletInstance updatePortletInstance(CustomizationContext customizationContext,
                                             PortletInstance portletInstance)
                                      throws RemoteException,
                                             ObjectNotFoundException,
                                             NotEntitledException

Update the portlet instance outside the context of a desktop (in a Library). For Admins editing the primary instance (not placed on any page) use the PortletDefinitionManager.updatePortletDefinition().

Parameters:
portletInstance - the portlet instance containing the new data
Returns:
the new updated portlet instance.
Throws:
ObjectNotFoundException - if the PortletInstanceId in the PortletInstance is bogus.
RemoteException
NotEntitledException

getPredecessor

public PortletInstanceId getPredecessor(CustomizationContext customizationContext,
                                        PortletInstanceId portletInstanceId)
                                 throws RemoteException,
                                        ObjectNotFoundException

Returns the instance ID that the given instance is based on. Returns null if there is no predecessor

Parameters:
portletInstanceId - the portlet instance ID
Returns:
successor instance ID
Throws:
ObjectNotFoundException - if the PortletInstanceId does not exist.
RemoteException

getSuccessors

public PortletInstanceId[] getSuccessors(CustomizationContext customizationContext,
                                         PortletInstanceId portletInstanceId)
                                  throws RemoteException,
                                         ObjectNotFoundException

Returns a list of successor instances. Returns an empty list if there are no successors.

Parameters:
portletInstanceId - the portlet instance ID
Returns:
array of successor instance IDs
Throws:
ObjectNotFoundException - if the PortletInstanceId does not exist.
RemoteException

createSuccessor

public PortletInstanceId createSuccessor(CustomizationContext customizationContext,
                                         DesktopDefinitionId desktopDefinitionId,
                                         PortletInstanceId portletInstanceId)
                                  throws RemoteException,
                                         ObjectNotFoundException,
                                         NotEntitledException

Creates a successor instance and returns its instance ID. Returns the same instance ID if there is no need to create a successor instance.

Parameters:
desktopDefinitionId - the desktop context to which this chage applies.
portletInstanceId - the portlet instance ID
Returns:
successor instance ID
Throws:
ObjectNotFoundException - if the PortletInstanceId does not exist.
RemoteException
NotEntitledException

© 2003 BEA Systems, Inc.

Copyright © 2003 BEA Systems, Inc. All Rights Reserved