Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.netuix.application.manager
Interface IPageDefinitionManager

All Known Subinterfaces:
  PageDefinitionManager

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".

Method Summary
`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.
`PageDefinition` | `createPageDefinition(CustomizationContext customizationContext, PageDefinition pageDefinition)` Create a new page definition.
`void` | `deletePageDefinition(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)` Delete a page definition, but only if it is not used by other page instances.
`void` | `deletePageDefinitionWithCascade(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)` Delete a page definition and all page instances associated with this definition.
`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.
`PageDefinition` | `getPageDefinition(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)` Getter for returning a single `PageDefinition` object given a supplied page definition identifier.
`PageDefinition` | `getPageDefinition(CustomizationContext customizationContext, String pageDefinitionLabel, String webAppName)` Getter for returning a single `PageDefinition` object given a supplied page definition label.
`PageDefinition[]` | `getPageDefinitions(CustomizationContext customizationContext, String webapp)` Getter for returning a list of all `PageDefinitions` scoped to the supplied webapp.
`PageDefinition[]` | `getPageDefinitions(CustomizationContext customizationContext, String webapp, PageDefinitionId firstPageDefinitionId, int limit)` Returns `PageDefinition`s in `definitionId` order (create order).
`PageView` | `getPageView(CustomizationContext customizationContext, PageDefinitionId pageDefinitionId)` Getter for returning an immutable deep copy of a `PageView`.
`com.bea.netuix.application.manager.persistence.jdbc.Placement` | `getPlacement(CustomizationContext customizationContext, PlacementId placementId)` Returns a `Placement` given a `placementId`.
`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.
`PageDefinition[]` | `getPublicPageDefinitions(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageDefinitionId firstPageDefinitionId, int limit)` Returns `PageDefinition`s in `definitionId` order (create order) scoped to the supplied webapp and marked as public and not currently on the users desktop.
`PageDefinition[]` | `getPublicPageDefinitions(CustomizationContext customizationContext, String webapp)` Getter for returning a list of all `PageDefinitions` marked as public and scoped to the supplied webapp.
`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.
`PageDefinition[]` | `getPublicPageDefinitions(CustomizationContext customizationContext, String webapp, PageDefinitionId firstPageDefinitionId, int limit)` Returns `PageDefinition`s in `definitionId` order (create order) marked as public and scoped to the supplied webapp.
`com.bea.netuix.application.manager.persistence.jdbc.Placement` | `movePlaceable(CustomizationContext customizationContext, PlacementId placementId, PlaceholderDefinitionId placeholderDefinitionId, int position)` Move a placeable (book or portlet) definition from one placeholder to another.
`void` | `removePlaceable(CustomizationContext customizationContext, PlacementId placementId)` Remove a placeable from a page's placeholder.
`PageDefinition[]` | `searchPublicPageDefinitions(CustomizationContext customizationContext, String webapp, String partialPageTitle, int limit)` Search for public pages given the supplied search string.
`void` | `updatePageDefinition(CustomizationContext customizationContext, PageDefinition pageDefinition)` Update the page definition with the new data.
`void` | `updatePageDefinitionNoDuplicates(CustomizationContext customizationContext, PageDefinition pageDefinition)` Checks for duplicate page labels then updates the page definition with the new data.

Method Detail

### addPlaceable

    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.
  Throws:
    `ObjectNotFoundException` - if the PageDefinitionId or the PlaceholderDefinition Id are bogus
    `IllegalDependencyException` - adding the Placeable to the PageDefinition would cause a recursive dependancy
    `MissingDataException` - the placeableDefinition is missing some vital data.
    `NotEntitledException` - the caller is not entitled to perform this action
    `DuplicateObjectException` - if the navigable is a book and is already added to this page
    `RemoteException`

### createPageDefinition

    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
  Throws:
    `MissingDataException` - the pade definition object supplied is missing some vital data.
    `NotEntitledException` - caller is not entitled to perform this action
    `RemoteException`

### deletePageDefinition

    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.
  Throws:
    `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.
    `RemoteException`
  See Also:
    `deletePageDefinitionWithCascade(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.PageDefinitionId)`

### deletePageDefinitionWithCascade

    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.
  Throws:
    `ObjectNotFoundException` - if the pageDefinitionId is bogus
    `NotEntitledException` - the caller is not entitled to perform this operation.
    `RemoteException`
  See Also:
    `deletePageDefinition(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.PageDefinitionId)`

### deletePageDefinitionWithReplacement

    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.
  Throws:
    `ObjectNotFoundException` - if the pageDefinitionId is bogus.
    `NotEntitledException` - no entitlements for this operation.
    `RemoteException`
  See Also:
    `PageDefinition`

### getPageDefinition

    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.`
  Throws:
    `RemoteException`

### getPageDefinition

    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.`
  Throws:
    `RemoteException`

### getPageDefinitions

    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.
  Throws:
    `RemoteException`
  See Also:
    `PageDefinition`

### getPageDefinitions

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

  Returns `PageDefinition`s in `definitionId` order (create order). Starting with the supplied definitionId and limiting the result set to size `limit`. If fewer `PageDefinition`s 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 `PageDefinition`s 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 `PageDefinition`s no greater than `limit` in size.
  Throws:
    `RemoteException`

### getPageView

    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.
  Throws:
    `RemoteException`

### getPlacement

    public com.bea.netuix.application.manager.persistence.jdbc.Placement getPlacement(CustomizationContext customizationContext,
                                                                                      PlacementId placementId)
                                                                               throws RemoteException

  Returns a `Placement` given a `placementId`. Returns a `null` if no `Placement` matching `placementId` exists.

  Parameters:
    `placementId` - placementId for the placement being requested
  Returns:
    a Placement object
  Throws:
    `RemoteException`

### getPublicPageDefinitions

    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.
  Throws:
    `RemoteException`
  See Also:
    `PageDefinition`

### getPublicPageDefinitions

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

  Returns `PageDefinition`s 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 `PageDefinition`s 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 `PageDefinition`s 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.
  Throws:
    `RemoteException`
  See Also:
    `PageDefinition`

### getPublicPageDefinitions

    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.
  Throws:
    `RemoteException`
  See Also:
    `PageDefinition`

### getPublicPageDefinitions

    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.
  Throws:
    `RemoteException`
  See Also:
    `PageDefinition`

### getPublicPageDefinitions

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

  Returns `PageDefinition`s 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 `PageDefinition`s 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 `PageDefinition`s 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 `PageDefinition`s no greater than `limit` in size.
  Throws:
    `RemoteException`

### movePlaceable

    public com.bea.netuix.application.manager.persistence.jdbc.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
  Throws:
    `ObjectNotFoundException` - if the PageDefinitionId or the PlaceholderDefinition Id are bogus
    `NotEntitledException` - the caller is not entitled to perform this action
    `RemoteException`

### removePlaceable

    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` -
  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`

### searchPublicPageDefinitions

    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 `PageDefinition`s 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 `PageDefinition`s no greater than `limit` in size.
  Throws:
    `RemoteException`

### updatePageDefinition

    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
  Throws:
    `ObjectNotFoundException` - if the LocalizationIntersectionId in the LocalizationResource is bogus.
    `RemoteException`
    `NotEntitledException`

### updatePageDefinitionNoDuplicates

    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
  Throws:
    `ObjectNotFoundException` - if the LocalizationIntersectionId in the LocalizationResource is bad.
    `RemoteException`
    `NotEntitledException`
    `DuplicateObjectException`

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 BEA Systems, Inc. All Rights Reserved