# com.bea.netuix.application.manager.persistence.jdbc
PageDefinitionManagerImpl Class

public class PageDefinitionManagerImpl
extends `Object`
implements `ILayoutDefinitionManager`, `IPageDefinitionManager`, `SessionBean`

Hierarchy
  `Object`
  `PageDefinitionManagerImpl`

All Implemented Interfaces
  `EnterpriseBean`, `ILayoutDefinitionManager`, `IPageDefinitionManager`, `Serializable`, `SessionBean`

## Constructor Summary

PageDefinitionManagerImpl()

## 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 `LayoutDefinition`` | `createLayoutDefinition`(`CustomizationContext` customizationContext, `LayoutDefinition` layoutDefinition) Creates a new LayoutView Definition with its placeholders.
`public `PageDefinition`` | `createPageDefinition`(`CustomizationContext` customizationContext, `PageDefinition` pageDefinition) Create a new page definition.
`public void` | `deleteLayoutDefinition`(`CustomizationContext` customizationContext, `LayoutDefinitionId` layoutDefinitionId) Delete a layout definition and all its associated placeholders..
`public void` | `deleteLayoutDefinitionWithReplacement`(`CustomizationContext` customizationContext, `LayoutDefinitionId` deleteLayoutDefinitionId, `LayoutDefinitionId` replacementLayoutDefinitionId) Delete a layout definition (and its placeholders) and replace any uses of that layout with a replacement layout.
`public void` | `deletePageDefinition`(`CustomizationContext` customizationContext, `PageDefinitionId` pageDefinitionId) Delete a page definition, but only if it is not used byt 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 defintion.
`public void` | `ejbActivate`()
`public void` | `ejbCreate`()
`public void` | `ejbPassivate`()
`public void` | `ejbRemove`()
`public `LayoutDefinition`` | `getLayoutDefinition`(`CustomizationContext` customizationContext, `LayoutDefinitionId` layoutDefinitionId) Getter for returning a single `LayoutDefinition` object given a supplied layout definition identifier.
`public `LayoutDefinition`` | `getLayoutDefinitionFromFile`(`CustomizationContext` customizationContext, `String` layoutFile, `String` webAppName) Getter for returning a single `LayoutDefinition` object given a supplied layout file name and web app name.
`public `LayoutDefinitionId`` | `getLayoutDefinitionId`(`CustomizationContext` customizationContext, `String` markupName, `String` webAppName) Getter for returning a single `LayoutDefinitionId` object given a supplied layout markup name.
`public `LayoutDefinition`[]` | `getLayoutDefinitions`(`CustomizationContext` customizationContext, `String` webapp) Getter for returning a list of all `LayoutDefinitions` scoped to the supplied webapp.
`public `LayoutDefinition`[]` | `getLayoutDefinitions`(`CustomizationContext` customizationContext, `String` webapp, `LayoutDefinitionId` firstLayoutDefinitionId, int limit) Returns `LayoutDefinition`s in `definitionId` order (create order).
`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 `PageDefinition`s in `definitionId` order (create order).
`public `PageView`` | `getPageView`(`CustomizationContext` customizationContext, `PageDefinitionId` pageDefinitionId) Getter for returning an immutable deep copy of a `PageView`.
`public `PlaceholderDefinitionId`` | `getPlaceholderDefinitionId`(`CustomizationContext` customizationContext, `LayoutDefinitionId` layoutDefinitionId, int layoutLocation) Getter for returning a single `PlaceholderDefinitionId` object given a supplied placeholder markup name.
`public `Placement`` | `getPlacement`(`CustomizationContext` customizationContext, `PlacementId` placementId) Returns a `Placement` given a `placementId`.
`public `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.
`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 callers desktop.
`public `PageDefinition`[]` | `getPublicPageDefinitions`(`CustomizationContext` customizationContext, `String` webapp, `BookDefinitionId` bookDefinitionId) Getter for returning a list of all `PageDefinitions` marked as public and scoped scoped to the supplied webapp and not currently on the 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` title, int limit) Search for public pages given the supplied search string.
`public void` | `setSessionContext`(`SessionContext` sessionContext)
`public void` | `updateLayoutDefinition`(`CustomizationContext` customizationContext, `LayoutDefinition` layoutDefinition) Update the layout definition with the new data.
`public void` | `updatePageDefinition`(`CustomizationContext` customizationContext, `PageDefinition` pageDefinition) Update the page definition with the new data.

Methods from class `java.lang.`Object``
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods from class `com.bea.netuix.application.manager.`ILayoutDefinitionManager``
``createLayoutDefinition`, `deleteLayoutDefinition`, `deleteLayoutDefinitionWithReplacement`, `getLayoutDefinition`, `getLayoutDefinitionFromFile`, `getLayoutDefinitionId`, `getLayoutDefinitions`, `getLayoutDefinitions`, `getPlaceholderDefinitionId`, `updateLayoutDefinition``

Methods from class `com.bea.netuix.application.manager.`IPageDefinitionManager``
``addPlaceable`, `createPageDefinition`, `deletePageDefinition`, `deletePageDefinitionWithCascade`, `deletePageDefinitionWithReplacement`, `getPageDefinition`, `getPageDefinition`, `getPageDefinitions`, `getPageDefinitions`, `getPageView`, `getPlacement`, `getPublicPageDefinitions`, `getPublicPageDefinitions`, `getPublicPageDefinitions`, `getPublicPageDefinitions`, `movePlaceable`, `removePlaceable`, `searchPublicPageDefinitions`, `updatePageDefinition``

Methods from class `javax.ejb.`SessionBean``
`ejbActivate, ejbPassivate, ejbRemove, setSessionContext`

## Constructor Detail

### PageDefinitionManagerImpl

    public PageDefinitionManagerImpl()

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

Description copied from `IPageDefinitionManager.addPlaceable(CustomizationContext, PageDefinitionId, PlaceableDefinitionId, PlaceholderDefinitionId, int)`
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.

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``
``MissingDataException``
``NotEntitledException``
``IllegalDependencyException``
``DuplicateObjectException``

### createLayoutDefinition(CustomizationContext, LayoutDefinition) Method

    public LayoutDefinition createLayoutDefinition(CustomizationContext customizationContext,
                                                   LayoutDefinition layoutDefinition)
         throws RemoteException, MissingDataException, NotEntitledException

Description copied from `ILayoutDefinitionManager.createLayoutDefinition(CustomizationContext, LayoutDefinition)`
Creates a new LayoutView Definition with its placeholders.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

layoutDefinition
  the layout data and associated placeholders

#### Returns

a fully populated LayoutDefinition

#### Exceptions

``RemoteException``
``MissingDataException``
``NotEntitledException``

### createPageDefinition(CustomizationContext, PageDefinition) Method

    public PageDefinition createPageDefinition(CustomizationContext customizationContext,
                                               PageDefinition pageDefinition)
         throws RemoteException, MissingDataException, NotEntitledException

Description copied from `IPageDefinitionManager.createPageDefinition(CustomizationContext, PageDefinition)`
Create a new page definition.

#### Parameters

customizationContext
  customization information such as prefered 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``
``NotEntitledException``

### deleteLayoutDefinition(CustomizationContext, LayoutDefinitionId) Method

    public void deleteLayoutDefinition(CustomizationContext customizationContext,
                                       LayoutDefinitionId layoutDefinitionId)
         throws RemoteException, ObjectNotFoundException, ObjectInUseException, NotEntitledException

Description copied from `ILayoutDefinitionManager.deleteLayoutDefinition(CustomizationContext, LayoutDefinitionId)`

Delete a layout definition and all its associated placeholders..

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

layoutDefinitionId
  the id of the layout definition to delete.

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``ObjectInUseException``
``NotEntitledException``

### deleteLayoutDefinitionWithReplacement(CustomizationContext, LayoutDefinitionId, LayoutDefinitionId) Method

    public void deleteLayoutDefinitionWithReplacement(CustomizationContext customizationContext,
                                                      LayoutDefinitionId deleteLayoutDefinitionId,
                                                      LayoutDefinitionId replacementLayoutDefinitionId)
         throws RemoteException, ObjectNotFoundException, NotEntitledException

Description copied from `ILayoutDefinitionManager.deleteLayoutDefinitionWithReplacement(CustomizationContext, LayoutDefinitionId, LayoutDefinitionId)`

Delete a layout definition (and its placeholders) and replace any uses of that layout with a replacement layout. This method is useful for deleting a layout that is in use by page instances and not having to delete those page instances.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

deleteLayoutDefinitionId
  the id of the layout definition to delete.

replacementLayoutDefinitionId
  the id of the replacement layout

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``NotEntitledException``

### deletePageDefinition(CustomizationContext, PageDefinitionId) Method

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

Description copied from `IPageDefinitionManager.deletePageDefinition(CustomizationContext, PageDefinitionId)`

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

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId returned.

pageDefinitionId
  the id of the page definition to delete.

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``ObjectInUseException``
``NotEntitledException``

### deletePageDefinitionWithCascade(CustomizationContext, PageDefinitionId) Method

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

Description copied from `IPageDefinitionManager.deletePageDefinitionWithCascade(CustomizationContext, PageDefinitionId)`

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

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId returned.

pageDefinitionId
  the id of the page definition to delete.

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``NotEntitledException``

### deletePageDefinitionWithReplacement(CustomizationContext, PageDefinitionId, PageDefinitionId) Method

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

Description copied from `IPageDefinitionManager.deletePageDefinitionWithReplacement(CustomizationContext, PageDefinitionId, PageDefinitionId)`

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

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

#### Parameters

customizationContext
  customization information such as prefered 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``
``NotEntitledException``

### ejbActivate() Method

    public void ejbActivate()
         throws EJBException, RemoteException

#### Exceptions

``EJBException``
``RemoteException``

### ejbCreate() Method

    public void ejbCreate()
         throws CreateException, RemoteException

#### Exceptions

``CreateException``
``RemoteException``

### ejbPassivate() Method

    public void ejbPassivate()
         throws EJBException, RemoteException

#### Exceptions

``EJBException``
``RemoteException``

### ejbRemove() Method

    public void ejbRemove()
         throws EJBException, RemoteException

#### Exceptions

``EJBException``
``RemoteException``

### getLayoutDefinition(CustomizationContext, LayoutDefinitionId) Method

    public LayoutDefinition getLayoutDefinition(CustomizationContext customizationContext,
                                                LayoutDefinitionId layoutDefinitionId)
         throws RemoteException

Description copied from `ILayoutDefinitionManager.getLayoutDefinition(CustomizationContext, LayoutDefinitionId)`

Getter for returning a single `LayoutDefinition` object given a supplied layout definition identifier.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

layoutDefinitionId
  the unique layout definition identifier.

#### Returns

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

#### Exceptions

``RemoteException``

### getLayoutDefinitionFromFile(CustomizationContext, String, String) Method

    public LayoutDefinition getLayoutDefinitionFromFile(CustomizationContext customizationContext,
                                                        String layoutFile,
                                                        String webAppName)
         throws RemoteException

Description copied from `ILayoutDefinitionManager.getLayoutDefinitionFromFile(CustomizationContext, String, String)`

Getter for returning a single `LayoutDefinition` object given a supplied layout file name and web app name.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

layoutFile
  the name of the .layout file

webAppName
  the name of the web app as defined in the config.xml

#### Returns

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

#### Exceptions

``RemoteException``

### getLayoutDefinitionId(CustomizationContext, String, String) Method

    public LayoutDefinitionId getLayoutDefinitionId(CustomizationContext customizationContext,
                                                    String markupName,
                                                    String webAppName)
         throws RemoteException

Description copied from `ILayoutDefinitionManager.getLayoutDefinitionId(CustomizationContext, String, String)`

Getter for returning a single `LayoutDefinitionId` object given a supplied layout markup name.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

markupName
  as supplied on the tag.

webAppName
  as defined in the config.xml

#### Returns

LayoutDefinitionId the unique layout definition identifier or null if none exist.

#### Exceptions

``RemoteException``

### getLayoutDefinitions(CustomizationContext, String) Method

    public LayoutDefinition[] getLayoutDefinitions(CustomizationContext customizationContext,
                                                 String webapp)
         throws RemoteException

Description copied from `ILayoutDefinitionManager.getLayoutDefinitions(CustomizationContext, String)`

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

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

webapp
  the web application these layout definitions are scoped to.

#### Returns

an array of `LayoutDefinition` objects if they exist, otherwise, an empty array.

#### Exceptions

``RemoteException``

### getLayoutDefinitions(CustomizationContext, String, LayoutDefinitionId, int) Method

    public LayoutDefinition[] getLayoutDefinitions(CustomizationContext customizationContext,
                                                 String webapp,
                                                 LayoutDefinitionId firstLayoutDefinitionId,
                                                 int limit)
         throws RemoteException

Description copied from `ILayoutDefinitionManager.getLayoutDefinitions(CustomizationContext, String, LayoutDefinitionId, int)`

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

#### Parameters

customizationContext
  customization information such as preferred locales.

webapp
  the web application these layout definitions are scoped to.

firstLayoutDefinitionId
  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 `LayoutDefinition`s no greater than `limit` in size.

#### Exceptions

``RemoteException``

### getPageDefinition(CustomizationContext, PageDefinitionId) Method

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

Description copied from `IPageDefinitionManager.getPageDefinition(CustomizationContext, PageDefinitionId)`

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

#### Parameters

customizationContext
  customization information such as prefered 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

Description copied from `IPageDefinitionManager.getPageDefinition(CustomizationContext, String, String)`

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

#### Parameters

customizationContext
  customization information such as prefered 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

Description copied from `IPageDefinitionManager.getPageDefinitions(CustomizationContext, String)`

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

#### Parameters

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

### getPageDefinitions(CustomizationContext, String, PageDefinitionId, int) Method

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

Description copied from `IPageDefinitionManager.getPageDefinitions(CustomizationContext, String, PageDefinitionId, int)`

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.

#### Exceptions

``RemoteException``

### getPageView(CustomizationContext, PageDefinitionId) Method

    public PageView getPageView(CustomizationContext customizationContext,
                                PageDefinitionId pageDefinitionId)

Description copied from `IPageDefinitionManager.getPageView(CustomizationContext, PageDefinitionId)`

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.

pageDefinitionId
  the unique pageDefinitionId.

#### Returns

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

### getPlaceholderDefinitionId(CustomizationContext, LayoutDefinitionId, int) Method

    public PlaceholderDefinitionId getPlaceholderDefinitionId(CustomizationContext customizationContext,
                                                              LayoutDefinitionId layoutDefinitionId,
                                                              int layoutLocation)
         throws RemoteException

Description copied from `ILayoutDefinitionManager.getPlaceholderDefinitionId(CustomizationContext, LayoutDefinitionId, int)`

Getter for returning a single `PlaceholderDefinitionId` object given a supplied placeholder markup name.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

#### Returns

PlaceholderDefinitionId the unique placeholder definition identifier or null if none exist.

#### Exceptions

``RemoteException``

### getPlacement(CustomizationContext, PlacementId) Method

    public Placement getPlacement(CustomizationContext customizationContext,
                                  PlacementId placementId)
         throws RemoteException

Description copied from `IPageDefinitionManager.getPlacement(CustomizationContext, PlacementId)`
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, String, PageDefinitionId, int) Method

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

Description copied from `IPageDefinitionManager.getPublicPageDefinitions(CustomizationContext, String, PageDefinitionId, int)`

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.

#### Exceptions

``RemoteException``

### getPublicPageDefinitions(CustomizationContext, String) Method

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

Description copied from `IPageDefinitionManager.getPublicPageDefinitions(CustomizationContext, String)`

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

#### Parameters

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

### getPublicPageDefinitions(CustomizationContext, DesktopDefinitionId) Method

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

Description copied from `IPageDefinitionManager.getPublicPageDefinitions(CustomizationContext, DesktopDefinitionId)`

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

#### Parameters

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

### getPublicPageDefinitions(CustomizationContext, String, BookDefinitionId) Method

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

Description copied from `IPageDefinitionManager.getPublicPageDefinitions(CustomizationContext, String, BookDefinitionId)`

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

#### Parameters

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

### movePlaceable(CustomizationContext, PlacementId, PlaceholderDefinitionId, int) Method

    public Placement movePlaceable(CustomizationContext customizationContext,
                                   PlacementId placementId,
                                   PlaceholderDefinitionId placeholderDefinitionId,
                                   int position)
         throws RemoteException, ObjectNotFoundException, NotEntitledException

Description copied from `IPageDefinitionManager.movePlaceable(CustomizationContext, PlacementId, PlaceholderDefinitionId, int)`
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 prefered 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``
``NotEntitledException``

### removePlaceable(CustomizationContext, PlacementId) Method

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

Description copied from `IPageDefinitionManager.removePlaceable(CustomizationContext, PlacementId)`

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

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId returned.

placementId

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``NotEntitledException``

### searchPublicPageDefinitions(CustomizationContext, String, String, int) Method

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

Description copied from `IPageDefinitionManager.searchPublicPageDefinitions(CustomizationContext, String, String, int)`

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.

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

#### Exceptions

``RemoteException``

### setSessionContext(SessionContext) Method

    public void setSessionContext(SessionContext sessionContext)
         throws EJBException, RemoteException

#### Exceptions

``EJBException``
``RemoteException``

### updateLayoutDefinition(CustomizationContext, LayoutDefinition) Method

    public void updateLayoutDefinition(CustomizationContext customizationContext,
                                       LayoutDefinition layoutDefinition)
         throws RemoteException, ObjectNotFoundException, MissingDataException, NotEntitledException

Description copied from `ILayoutDefinitionManager.updateLayoutDefinition(CustomizationContext, LayoutDefinition)`

Update the layout definition with the new data.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId

layoutDefinition
  the layout definition containing the new data

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``MissingDataException``
``NotEntitledException``

### updatePageDefinition(CustomizationContext, PageDefinition) Method

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

Description copied from `IPageDefinitionManager.updatePageDefinition(CustomizationContext, PageDefinition)`

Update the page definition with the new data.

#### Parameters

customizationContext
  customization information such as prefered locales and desktopInstanceId returned.

pageDefinition
  the page definition containing the new data

#### Exceptions

``RemoteException``
``ObjectNotFoundException``
``NotEntitledException``