IPageDefinitionManager Interface

com.bea.netuix.application.manager
IPageDefinitionManager Interface

public interface IPageDefinitionManager

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.

"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

PageDefinitionManager

Method Summary

public PlaceableInstance
addPlaceable(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId, PlaceableDefinitionId placeableDefinitionId, PlaceholderDefinitionId placeholderDefinitionId, int position)
Create a new instance of a placeable (PortletView or BookView) by placing the definition in a placeholder.
public PageDefinition
createPageDefinition(CustomizationContext customizationContext, PageDefinition pageDefinition)
Create a new page definition.
public void
deletePageDefinition(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)

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

public void
deletePageDefinitionWithCascade(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)

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

public void
deletePageDefinitionWithReplacement(CustomizationContext customizationContext, PageDefinitionId deletePageDefinitionId, PageDefinitionId replacementPageDefinitionId)

Delete an existing page definition and if it is in use replace it's use with the supplied page definition.

public PageDefinition
getPageDefinition(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)

Getter for returning a single PageDefinition object given a supplied page definition identifier.

public PageDefinition
getPageDefinition(CustomizationContext customizationContext, String pageDefinitionLabel, String webAppName)

Getter for returning a single PageDefinition object given a supplied page definition label.

public PageDefinition[]
getPageDefinitions(CustomizationContext customizationContext, String webapp)

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

public PageDefinition[]
getPageDefinitions(CustomizationContext customizationContext, String webapp, PageDefinitionId firstPageDefinitionId, int limit)

Returns PageDefinitions in definitionId order (create order).

public PageView
getPageView(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)

Getter for returning an immutable deep copy of a PageView.

public Placement
getPlacement(CustomizationContext customizationContext, PlacementId placementId)
Returns a Placement given a placementId.
public PageDefinition[]
getPublicPageDefinitions(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageDefinitionId firstPageDefinitionId, int limit)

Returns PageDefinitions in definitionId order (create order) scoped to the supplied webapp and marked as public and not currently on the users desktop.

public PageDefinition[]
getPublicPageDefinitions(CustomizationContext customizationContext, String webapp, PageDefinitionId firstPageDefinitionId, int limit)

Returns PageDefinitions in definitionId order (create order) marked as public and scoped to the supplied webapp.

public PageDefinition[]
getPublicPageDefinitions(CustomizationContext customizationContext, String webapp)

Getter for returning a list of all PageDefinitions marked as public and scoped to the supplied webapp.

public PageDefinition[]
getPublicPageDefinitions(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)

Getter for returning a list of all PageDefinitions marked as public and scoped scoped to the supplied webapp and not currently on the caller's desktop.

public PageDefinition[]
getPublicPageDefinitions(CustomizationContext customizationContext, String webapp, BookDefinitionId bookDefinitionId)

Getter for returning a list of all PageDefinitions marked as public and scoped to the supplied webapp and not currently on the supplied book.

public Placement
movePlaceable(CustomizationContext customizationContext, PlacementId placementId, PlaceholderDefinitionId placeholderDefinitionId, int position)
Move a placeable (book or portlet) definition from one placeholder to another.
public void
removePlaceable(CustomizationContext customizationContext, PlacementId placementId)

Remove a placeable from a page's placeholder.

public PageDefinition[]
searchPublicPageDefinitions(CustomizationContext customizationContext, String webapp, String partialPageTitle, int limit)

Search for public pages given the supplied search string.

public void
updatePageDefinition(CustomizationContext customizationContext, PageDefinition pageDefinition)

Update the page definition with the new data.

public void
updatePageDefinitionNoDuplicates(CustomizationContext customizationContext, PageDefinition pageDefinition)

Checks for duplicate page labels then updates the page definition with the new data.

Method Detail

addPlaceable(CustomizationContext, PageDefinitionId, PlaceableDefinitionId, PlaceholderDefinitionId, int) Method

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

Parameters

customizationContext
customization information such as preferred locales.
pageDefinitionId
the id of the page to place the placeable.
placeableDefinitionId
the abstract definition id of the placeable definition.
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.

Exceptions

RemoteException
ObjectNotFoundException
if the PageDefinitionId or the PlaceholderDefinition Id are bogus
MissingDataException
the placeableDefinition is missing some vital data.
NotEntitledException
the caller is not entitled to perform this action
IllegalDependencyException
adding the Placeable to the PageDefinition would cause a recursive dependancy
DuplicateObjectException
if the navigable is a book and is already added to this page

createPageDefinition(CustomizationContext, PageDefinition) Method

public PageDefinition createPageDefinition(CustomizationContext customizationContext, 
                                           PageDefinition pageDefinition)
throws RemoteException, MissingDataException, NotEntitledException
Create a new page definition.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinition
the object containing the data to create the new page definition with.

Returns

a fully populated page definition object

Exceptions

RemoteException
MissingDataException
the pade definition object supplied is missing some vital data.
NotEntitledException
caller is not entitled to perform this action

deletePageDefinition(CustomizationContext, PageDefinitionId) Method

public void deletePageDefinition(CustomizationContext customizationContext, 
                                 PageDefinitionId pageDefinitionId)
throws RemoteException, ObjectNotFoundException, ObjectInUseException, NotEntitledException

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

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinitionId
the id of the page definition to delete.

Exceptions

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

Related Topics

IPageDefinitionManager.deletePageDefinitionWithCascade(CustomizationContext, PageDefinitionId)


deletePageDefinitionWithCascade(CustomizationContext, PageDefinitionId) Method

public void deletePageDefinitionWithCascade(CustomizationContext customizationContext, 
                                            PageDefinitionId pageDefinitionId)
throws RemoteException, ObjectNotFoundException, NotEntitledException

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

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinitionId
the id of the page definition to delete.

Exceptions

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

Related Topics

IPageDefinitionManager.deletePageDefinition(CustomizationContext, PageDefinitionId)


deletePageDefinitionWithReplacement(CustomizationContext, PageDefinitionId, PageDefinitionId) Method

public void deletePageDefinitionWithReplacement(CustomizationContext customizationContext, 
                                                PageDefinitionId deletePageDefinitionId, 
                                                PageDefinitionId replacementPageDefinitionId)
throws RemoteException, ObjectNotFoundException, NotEntitledException

Delete an existing page definition and if it is in use replace it's use with the supplied page definition.

Note: all customization of the deleted page will be lost.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId
deletePageDefinitionId
the definition id of the page to delete
replacementPageDefinitionId
the definition id of the page to replace the deleted page.

Exceptions

RemoteException
ObjectNotFoundException
if the pageDefinitionId is bogus.
NotEntitledException
no entitlements for this operation.

Related Topics

PageDefinition


getPageDefinition(CustomizationContext, PageDefinitionId) Method

public PageDefinition getPageDefinition(CustomizationContext customizationContext, 
                                        PageDefinitionId pageDefinitionId)
throws RemoteException

Getter for returning a single PageDefinition object given a supplied page definition identifier.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinitionId
the unique page definition identifier.

Returns

a PageDefinition object fully populated and internationalized, otherwise, null>/code> if the object does not exist.

Exceptions

RemoteException

getPageDefinition(CustomizationContext, String, String) Method

public PageDefinition getPageDefinition(CustomizationContext customizationContext, 
                                        String pageDefinitionLabel, 
                                        String webAppName)
throws RemoteException

Getter for returning a single PageDefinition object given a supplied page definition label.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinitionLabel
the unique page definition label.
webAppName
the webapp this page is scoped to.

Returns

a PageDefinition object fully populated and internationalized, otherwise, null>/code> if the object does not exist.

Exceptions

RemoteException

getPageDefinitions(CustomizationContext, String) Method

public PageDefinition[] getPageDefinitions(CustomizationContext customizationContext, 
                                         String webapp)
throws RemoteException

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

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
webapp
the web application these page definitions are scoped to.

Returns

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

Exceptions

RemoteException

Related Topics

PageDefinition


getPageDefinitions(CustomizationContext, String, PageDefinitionId, int) Method

public PageDefinition[] getPageDefinitions(CustomizationContext customizationContext, 
                                         String webapp, 
                                         PageDefinitionId firstPageDefinitionId, 
                                         int limit)
throws RemoteException

Returns PageDefinitions in definitionId order (create order). Starting with the supplied definitionId and limiting the result set to size limit. If fewer PageDefinitions 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 pageDefinitionId. To retrieve from the end of the list and back specify null as the pageDefinitionId and a negative limit. To retrieve all the pageDefinitions in the database supply a limit of 0.
Implementation has to ensure that repeated calls to this method return PageDefinitions in a consistent order.

Parameters

customizationContext
customization information such as preferred locales.
webapp
the web application these page definitions are scoped to.
firstPageDefinitionId
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 PageDefinitions no greater than limit in size.

Exceptions

RemoteException

getPageView(CustomizationContext, PageDefinitionId) Method

public PageView getPageView(CustomizationContext customizationContext, 
                            PageDefinitionId pageDefinitionId)
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 preferred locales and desktopInstanceId returned.
pageDefinitionId
the unique pageDefinitionId.

Returns

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

Exceptions

RemoteException

getPlacement(CustomizationContext, PlacementId) Method

public Placement getPlacement(CustomizationContext customizationContext, 
                              PlacementId placementId)
throws RemoteException
Returns a Placement given a placementId. Returns a null if no Placement matching placementId exists.

Parameters

customizationContext
placementId for the placement being requested

Returns

a Placement object

Exceptions

RemoteException

getPublicPageDefinitions(CustomizationContext, DesktopDefinitionId, PageDefinitionId, int) Method

public PageDefinition[] getPublicPageDefinitions(CustomizationContext customizationContext, 
                                               DesktopDefinitionId desktopDefinitionId, 
                                               PageDefinitionId firstPageDefinitionId, 
                                               int limit)
throws RemoteException

Returns PageDefinitions in definitionId order (create order) scoped to the supplied webapp and marked as public and not currently on the users desktop. Starting with the supplied definitionId and limiting the result set to size limit. If fewer PageDefinitions 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 pageDefinitionId. To retrieve from the end of the list and back specify null as the pageDefinitionId and a negative limit. To retrieve all the pageDefinitions in the database supply a limit of 0.
Implementation has to ensure that repeated calls to this method return PageDefinitions in a consistent order.

Parameters

customizationContext
customization information such as prefered locales
desktopDefinitionId
you wish to add any of these page definitions to.
firstPageDefinitionId
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.

Returns

an array of fully populated and internationalized PageDefinition objects if they exist, otherwise, an empty array.

Exceptions

RemoteException

Related Topics

PageDefinition


getPublicPageDefinitions(CustomizationContext, String, PageDefinitionId, int) Method

public PageDefinition[] getPublicPageDefinitions(CustomizationContext customizationContext, 
                                               String webapp, 
                                               PageDefinitionId firstPageDefinitionId, 
                                               int limit)
throws RemoteException

Returns PageDefinitions in definitionId order (create order) marked as public and scoped to the supplied webapp. Starting with the supplied definitionId and limiting the result set to size limit If fewer PageDefinitions 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 pageDefinitionId. To retrieve from the end of the list and back specify null as the pageDefinitionId and a negative limit. To retrieve all the pageDefinitions in the database supply a limit of 0.
Implementation has to ensure that repeated calls to this method return PageDefinitions in a consistent order.

Parameters

customizationContext
customization information such as preferred locales.
webapp
the web application these page definitions are scoped to.
firstPageDefinitionId
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 PageDefinitions no greater than limit in size.

Exceptions

RemoteException

getPublicPageDefinitions(CustomizationContext, String) Method

public PageDefinition[] getPublicPageDefinitions(CustomizationContext customizationContext, 
                                               String webapp)
throws RemoteException

Getter for returning a list of all PageDefinitions marked as public and scoped to the supplied webapp.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
webapp
the web application these page definitions are scoped to.

Returns

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

Exceptions

RemoteException

Related Topics

PageDefinition


getPublicPageDefinitions(CustomizationContext, DesktopDefinitionId) Method

public PageDefinition[] getPublicPageDefinitions(CustomizationContext customizationContext, 
                                               DesktopDefinitionId desktopDefinitionId)
throws RemoteException

Getter for returning a list of all PageDefinitions marked as public and scoped scoped to the supplied webapp and not currently on the caller's desktop.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
desktopDefinitionId
you wish to add any of these book definitions to.

Returns

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

Exceptions

RemoteException

Related Topics

PageDefinition


getPublicPageDefinitions(CustomizationContext, String, BookDefinitionId) Method

public PageDefinition[] getPublicPageDefinitions(CustomizationContext customizationContext, 
                                               String webapp, 
                                               BookDefinitionId bookDefinitionId)
throws RemoteException

Getter for returning a list of all PageDefinitions marked as public and scoped to the supplied webapp and not currently on the supplied book.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
webapp
the web application these page definitions are scoped to.
bookDefinitionId
you wish to add any of these book definitions to.

Returns

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

Exceptions

RemoteException

Related Topics

PageDefinition


movePlaceable(CustomizationContext, PlacementId, PlaceholderDefinitionId, int) Method

public Placement movePlaceable(CustomizationContext customizationContext, 
                               PlacementId placementId, 
                               PlaceholderDefinitionId placeholderDefinitionId, 
                               int position)
throws RemoteException, ObjectNotFoundException, NotEntitledException
Move a placeable (book or portlet) definition from one placeholder to another. Note the new position must be on the same page.

Parameters

customizationContext
customization information such as preferred locales & request.
placementId
the placement id of the placeables current placement within the page
placeholderDefinitionId
the new placehoder to place this placeable in.
position
the position in the placeholder to insert the placeholder.

Returns

new placement

Exceptions

RemoteException
ObjectNotFoundException
if the PageDefinitionId or the PlaceholderDefinition Id are bogus
NotEntitledException
the caller is not entitled to perform this action

removePlaceable(CustomizationContext, PlacementId) Method

public void removePlaceable(CustomizationContext customizationContext, 
                            PlacementId placementId)
throws RemoteException, ObjectNotFoundException, NotEntitledException

Remove a placeable from a page's placeholder. This operation will NOT delete the PageView Definition.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
placementId

Exceptions

RemoteException
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

searchPublicPageDefinitions(CustomizationContext, String, String, int) Method

public PageDefinition[] searchPublicPageDefinitions(CustomizationContext customizationContext, 
                                                  String webapp, 
                                                  String partialPageTitle, 
                                                  int limit)
throws RemoteException

Search for public pages given the supplied search string. Pages 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 PageDefinitions in a consistent order.

Parameters

customizationContext
customization information such as preferred locales.
webapp
the web application these page definitions are scoped to.
partialPageTitle
the search string for page 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 PageDefinitions no greater than limit in size.

Exceptions

RemoteException

updatePageDefinition(CustomizationContext, PageDefinition) Method

public void updatePageDefinition(CustomizationContext customizationContext, 
                                 PageDefinition pageDefinition)
throws RemoteException, ObjectNotFoundException, NotEntitledException

Update the page definition with the new data.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinition
the page definition containing the new data

Exceptions

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

updatePageDefinitionNoDuplicates(CustomizationContext, PageDefinition) Method

public void updatePageDefinitionNoDuplicates(CustomizationContext customizationContext, 
                                             PageDefinition pageDefinition)
throws RemoteException, ObjectNotFoundException, NotEntitledException, DuplicateObjectException

Checks for duplicate page labels then updates the page definition with the new data.

Parameters

customizationContext
customization information such as preferred locales and desktopInstanceId returned.
pageDefinition
the page definition containing the new data

Exceptions

RemoteException
ObjectNotFoundException
if the LocalizationIntersectionId in the LocalizationResource is bad.
NotEntitledException
DuplicateObjectException