Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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

All Known Subinterfaces:
  PortalCustomizationManager

    public interface IPageInstanceManager

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

Most "Instances" can be thought of as objects tied to a desktop, An Admin has instances derived from the library Definition, and the "end user" has instances derived from the admin instance. Changes made via these APIs require a DesktopDefinitionId and the changes are scoped to that desktop. In other words changes made here do not affect the library or other Desktops. If the "visitorMode" on the customization Context is set the false (default) and the user executing the call is in the "Admin" or "PortalSystemAdministrator" role then these changes take affect at the admin level, and affect ALL users. If the visitorMode is false then the changes only affect the calling user.

See Also
  `CustomizationContext.setVisitorMode(boolean)`
  This interface is intended to be implemented only by Oracle Weblogic Portal. Oracle Systems reserves the right to add abstract methods to this interface without notice. Implementations of this interface by other parties must not be expected to compile without change in future versions of Oracle Weblogic Portal.

Method Summary
`PlaceableInstance` | `addPlaceable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageInstanceId pageInstanceId, PlaceableDefinitionId placeableDefinitionId, PlaceholderDefinitionId placeholderDefinitionId, int position)` Add a placeable (book or portlet) to a page in a specified location.
`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 `PageView`.
`PageView` | `getPageView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, String pageDefinitionLabel)` Getter for returning an immutable deep `PageView`.
`PageView` | `getShallowPageView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageInstanceId pageInstanceId)` Getter for returning an immutable shallow `PageView`.
`PageView` | `getShallowPageView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, String pageDefinitionLabel)` Getter for returning an immutable shallow `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` | `movePortlet(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, String pageDefinitionLabel, String portletInstanceLabel, int placeholder, int position)` Move a portlet on a page.
`void` | `removePlaceable(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PlaceableInstance placeableInstance)` Remove a placeable (portlet or book) from a page's placeholder.
`PageInstance` | `updatePageInstance(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, PageInstance pageInstance)` Update the page instance with the new data.

Method Detail

### getPageView

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

  Getter for returning an immutable deep `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.
    `desktopDefinitionId` - the desktop definition this page is placed in
    `pageInstanceId` - the unique pageInstanceId.
  Returns
    an immutable deep PageView object if one exists, otherwise null.
  Throws
    `RemoteException`

### getPageView

    PageView getPageView(CustomizationContext customizationContext,
                         DesktopDefinitionId desktopDefinitionId,
                         String pageDefinitionLabel)
                         throws RemoteException

  Getter for returning an immutable deep `PageView`. This method is very similiar to the other getPageView() method, however it does not require knowledge of the pageInstanceId. The correct page instance is returned via the desktop definition id, the page definition label and the visitor mode on the customization context. If visitor mode is set to false the default desktop view will be returned

  Parameters
    `customizationContext` - customization information: information used here is VistorMode, username and locale.
    `desktopDefinitionId` - the desktop definition this page is placed in
    `pageDefinitionLabel` - definition label of the page.
  Throws
    `RemoteException`

### getShallowPageView

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

  Getter for returning an immutable shallow `PageView`. The returned view object will be shallow in the sense that it will have no child book or portlet view arrays. However, you can lazily retrieve those by calling the paginated `PageView.getPagedPlaceables`method.``

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `desktopDefinitionId` - the desktop definition this page is placed in
    `pageInstanceId` - the unique pageInstanceId.
  Returns
    an immutable shallow PageView object if one exists, otherwise null.
  Throws
    `RemoteException`

### getShallowPageView

    PageView getShallowPageView(CustomizationContext customizationContext,
                                DesktopDefinitionId desktopDefinitionId,
                                String pageDefinitionLabel)
                                throws RemoteException

  Getter for returning an immutable shallow `PageView`. This method is very similiar to the other getShallowPageView() method, however it does not require knowledge of the pageInstanceId. The correct page instance is returned via the desktop definition id, the page definition label and the visitor mode on the customization context. If visitor mode is set to false the default desktop view will be returned

  Parameters
    `customizationContext` - customization information: information used here is VistorMode, username and locale.
    `desktopDefinitionId` - the desktop definition this page is placed in
    `pageDefinitionLabel` - definition label of the page.
  Throws
    `RemoteException`

### getPageInstance

    PageInstance getPageInstance(CustomizationContext customizationContext,
                                 PageInstanceId pageInstanceId)
                                 throws RemoteException

  Getter for returning a single `PageInstance`.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
  Returns
    a fully populated PageInstance object.
  Throws
    `RemoteException`
  See Also
    `PageDefinition`

### updatePageInstance

    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
  Returns
    a fully populated page instance.
  Throws
    `ObjectNotFoundException` - if the LocalizationIntersectionId in the LocalizationResource is bogus.
    `RemoteException`
    `NotEntitledException`

### addPlaceable

    PlaceableInstance addPlaceable(CustomizationContext customizationContext,
                                   DesktopDefinitionId desktopDefinitionId,
                                   PageInstanceId pageInstanceId,
                                   PlaceableDefinitionId placeableDefinitionId,
                                   PlaceholderDefinitionId placeholderDefinitionId,
                                   int position)
                                   throws RemoteException,
                                          ObjectNotFoundException,
                                          MissingDataException,
                                          NotEntitledException,
                                          IllegalDependencyException

  Add a placeable (book or portlet) to a page in a specified location. This will create a new placeable instance.

  Parameters
    `customizationContext` - customization information such as preferred 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`
  See Also
    `CustomizationContext.setVisitorMode(boolean)`

### movePlaceable

    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 the placeable.

  Parameters
    `customizationContext` - customization information such as preferred 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

    void removePlaceable(CustomizationContext customizationContext,
                         DesktopDefinitionId desktopDefinitionId,
                         PlaceableInstance placeableInstance)
                         throws RemoteException,
                                ObjectNotFoundException,
                                MissingDataException,
                                NotEntitledException

  Remove a placeable (portlet or book) from a page's placeholder. This operation will end up deleting the placeable's instance but not the placeable's definitions.

  Note: be careful calling this method with `CustomizationContext.setVisitorMode(false/true)` . If the placeable was not obtained from the correct view. In other words, if a visitor is looking at their desktop and want to remove a placeable and has permission to setVisitorMode(false) the placeable may not be on the admin’s view and hence you will get an `ObjectNotFoundException`

  Parameters
    `customizationContext` - customization information such as preferred 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`

### movePortlet

    void movePortlet(CustomizationContext customizationContext,
                     DesktopDefinitionId desktopDefinitionId,
                     String pageDefinitionLabel,
                     String portletInstanceLabel,
                     int placeholder,
                     int position)
                     throws RemoteException,
                            ObjectNotFoundException,
                            NotEntitledException,
                            IllegalDependencyException

  Move a portlet on a page. This method is similar to movePlaceable but takes a different set of arguments (no database Ids) and only work for portlets.

  Parameters
    `customizationContext` - customization information such as preferred locales.
    `desktopDefinitionId` - context of the desktop to which this applies
    `pageDefinitionLabel` - the definition label of the parent page
    `portletInstanceLabel` - the instance label of the portlet to move
    `placeholder` - the nth layout location in the layout (0..n)
    `position` - the position within the placeholder
  Throws
    `ObjectNotFoundException` - one ore more of the parameters passed in could not be tied to an object.
    `NotEntitledException` - the caller is not entitled to perform this action
    `RemoteException`
    `IllegalDependencyException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.