© 2003 BEA Systems, Inc.

com.bea.netuix.application.manager
Interface IPageInstanceManager

All Known Subinterfaces:
PortalCustomizationManager
All Known Implementing Classes:
PortalCustomizationManagerImpl

public interface IPageInstanceManager

This is the primary interface for performing persistent store operations on PageDefinitions. 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
 PlaceableInstance addPlaceable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageInstanceId pageInstanceId, PlaceableDefinitionId placeableDefinitionId, PlaceholderDefinitionId placeholderDefinitionId, int position)
          Create a new instance of a placeable (PortletView or BookView) by placing the definition in a placeholder.
 PageInstance getPageInstance(CustomizationContext customizationContext, PageInstanceId pageInstanceId)
          Getter for returning a single PageInstance.
 PageView getPageView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageInstanceId pageInstanceId)
          Getter for returning an immutable deep copy of a PageView.
 void movePlaceable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PlacementId placementId, PageInstanceId toPageInstanceId, PlaceholderDefinitionId placeholderDefinitionId, int position)
          Move a placeable instance from one placeholder to another.
 void removePlaceable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PlaceableInstance placeableInstance)
          Remove a placeable from a page's placeholder.
 PageInstance updatePageInstance(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageInstance pageInstance)
          Update the page instance with the new data.
 

Method Detail

getPageView

public PageView getPageView(CustomizationContext customizationContext,
                            DesktopDefinitionId desktopDefinitionId,
                            PageInstanceId pageInstanceId)
                     throws RemoteException

Getter for returning an immutable deep copy of a PageView. The PageView object, unlike the PageDefinition or the PageInstance objects contains a full set of references to all child pages, pages and so on. The PageView object however is immutable.

Parameters:
customizationContext - customization information such as prefered locales and desktopInstanceId returned.
desktopDefinitionId - the desktop definition it this page is placed in
pageInstanceId - the unique pageInstanceId.
Returns:
an immutable deep copy PageView object if one exist, otherwise null.
RemoteException

getPageInstance

public PageInstance getPageInstance(CustomizationContext customizationContext,
                                    PageInstanceId pageInstanceId)
                             throws RemoteException

Getter for returning a single PageInstance.

Parameters:
customizationContext - customization information such as prefered locales and desktopInstanceId returned.
Returns:
an fully populated PageInstance object.
RemoteException
See Also:
PageDefinition

updatePageInstance

public PageInstance updatePageInstance(CustomizationContext customizationContext,
                                       DesktopDefinitionId desktopDefinitionId,
                                       PageInstance pageInstance)
                                throws RemoteException,
                                       ObjectNotFoundException,
                                       NotEntitledException

Update the page instance with the new data.

Parameters:
desktopDefinitionId - the desktop this instance is associated with
pageInstance - the page definition containing the new data
Throws:
ObjectNotFoundException - if the LocalizationIntersectionId in the LocalizationResource is bogus.
RemoteException
NotEntitledException

addPlaceable

public PlaceableInstance addPlaceable(CustomizationContext customizationContext,
                                      DesktopDefinitionId desktopDefinitionId,
                                      PageInstanceId pageInstanceId,
                                      PlaceableDefinitionId placeableDefinitionId,
                                      PlaceholderDefinitionId placeholderDefinitionId,
                                      int position)
                               throws RemoteException,
                                      ObjectNotFoundException,
                                      MissingDataException,
                                      NotEntitledException,
                                      IllegalDependencyException
Create a new instance of a placeable (PortletView or BookView) by placing the definition in a placeholder.

Parameters:
customizationContext - customization information such as prefered locales.
desktopDefinitionId - context of the desktop to which this applies
pageInstanceId - the page instance id of the page to add the placeable.
placeableDefinitionId - the abstract definition id of the placeable
placeholderDefinitionId - the placehoder to place this placeable in.
position - the position in the placeholder to insert the placeholder.
Returns:
a fully populated placeable instance. This will be of a more concrete type depending on the placeable definition supplied.
Throws:
ObjectNotFoundException - if the PageDefinitionId or the PlaceholderDefinition Id are bogus
IllegalDependencyException - adding the Placeable to the PageInstance would cause a recursive dependancy
MissingDataException - the placeableDefinition is missing some vital data.
NotEntitledException - the caller is not entitled to perform this action
RemoteException

movePlaceable

public void movePlaceable(CustomizationContext customizationContext,
                          DesktopDefinitionId desktopDefinitionId,
                          PlacementId placementId,
                          PageInstanceId toPageInstanceId,
                          PlaceholderDefinitionId placeholderDefinitionId,
                          int position)
                   throws RemoteException,
                          ObjectNotFoundException,
                          NotEntitledException,
                          IllegalDependencyException
Move a placeable instance from one placeholder to another. This method is useful for preserving the instance of paceable.

Parameters:
customizationContext - customization information such as prefered locales.
desktopDefinitionId - context of the desktop to which this applies
placementId - the placement id of the placeables current placement within the page
toPageInstanceId - the id of the page to move the placeable to.
placeholderDefinitionId - the new placehoder to place this placeable in.
position - the position in the placeholder to insert the placeholder.
Throws:
ObjectNotFoundException - if the PageDefinitionId or the PlaceholderDefinition Id are bogus
NotEntitledException - the caller is not entitled to perform this action
RemoteException
IllegalDependencyException

removePlaceable

public void removePlaceable(CustomizationContext customizationContext,
                            DesktopDefinitionId desktopDefinitionId,
                            PlaceableInstance placeableInstance)
                     throws RemoteException,
                            ObjectNotFoundException,
                            MissingDataException,
                            NotEntitledException
Remove a placeable from a page's placeholder. This operation will end up deleting the placeable's instance.

Parameters:
customizationContext - customization information such as prefered locales.
desktopDefinitionId - context of the desktop to which this applies
placeableInstance - the instance to be removed
Throws:
ObjectNotFoundException - If the padeDefinitionId or the placeableInstanceId are bogus definition is in use by other instance.
NotEntitledException - the caller is not entitled to perform this action
RemoteException
MissingDataException

© 2003 BEA Systems, Inc.

Copyright © 2003 BEA Systems, Inc. All Rights Reserved