Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright © 2008 BEA Systems, Inc. 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 IShellDefinitionManager

All Known Subinterfaces:
  ShellDefinitionManager

    public interface IShellDefinitionManager

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

"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 affecting a single desktop then use the `PortalCustomizationManager` and make changes to the "Instances".

This interface is intended to be implemented only by BEA Weblogic Portal. BEA 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 BEA Weblogic Portal.

Method Summary
`PlaceableInstance` | `addPlaceable(CustomizationContext customizationContext, ShellDefinitionId shellDefinitionId, boolean isHeader, PlaceableDefinitionId placeableDefinitionId, PlaceholderDefinitionId placeholderDefinitionId, int position)` Create a new instance of a placeable (portlet or book) by placing the definition in a placeholder in the header or footer layout of the shell.
`ShellDefinition` | `createShellDefinition(CustomizationContext customizationContext, ShellDefinition shellDefinition)` Creates a new ShellView Definition with its placeholders.
`void` | `deletePlacements(CustomizationContext customizationContext, ShellDefinitionId shellDefinitionId)` Delete all placements for a shell.
`void` | `deleteShellDefinition(CustomizationContext customizationContext, ShellDefinitionId shellDefinitionId)` Delete a shell definition.
`void` | `deleteShellDefinitionWithReplacement(CustomizationContext customizationContext, ShellDefinitionId deleteShellDefinitionId, ShellDefinitionId replacementShellDefinitionId)` Delete a shell definition and replace any uses of that shell with a replacement shell.
`ShellDefinition` | `getShellDefinition(CustomizationContext customizationContext, ShellDefinitionId shellDefinitionId)` Getter for returning a single `ShellDefinition` object given a supplied shell definition identifier.
`ShellDefinition` | `getShellDefinitionFromFile(CustomizationContext customizationContext, String shellFile, String webAppName)` Return a shell definition with the shellFile equal to the supplied filePath.
`ShellDefinitionId` | `getShellDefinitionId(CustomizationContext customizationContext, String markupName, String webAppName)` Getter for returning a single `ShellDefinitionId` object given a supplied shell markup name.
`ShellDefinition[]` | `getShellDefinitions(CustomizationContext customizationContext, String webapp)` Getter for returning a list of all `ShellDefinitions` scoped to the supplied webapp.
`ShellDefinition[]` | `getShellDefinitions(CustomizationContext customizationContext, String webapp, ShellDefinitionId firstShellDefinitionId, int limit)` Returns `ShellDefinition`s in `definitionId` order (create order), starting with the supplied definitionId and limiting the result set to size `limit` If fewer `ShellDefinition`s exist than `limit`, then a smaller result set will be returned.
`SortableFilterablePagedResult<ShellDefinition>` | `getShellDefinitions(CustomizationContext customizationContext, WebAppSearchCriteria criteria, int pageSize)` Get all the shell definitions in the webapp as a paged object.
`ShellView` | `getShellView(CustomizationContext customizationContext, ShellDefinitionId shellDefinitionId)` Getter for returning an immutable deep `ShellView`.
`SortableFilterablePagedResult<LocalizationResourceView>` | `getVisibleShellLocalizationResources(CustomizationContext customizationContext, WebAppSearchCriteria criteria, int pageSize)` Retrieve the LocalizationResourceViews for all visible shells for a given locale and webapp.
`void` | `updateShellDefinition(CustomizationContext customizationContext, ShellDefinition shellDefinition)` Update the shell definition with the new data.

Method Detail

### getShellView

    ShellView getShellView(CustomizationContext customizationContext,
                           ShellDefinitionId shellDefinitionId)
                           throws RemoteException

  Getter for returning an immutable deep `ShellView`. The `ShellView` object, unlike the `ShellDefinition` or the `ShellInstance` objects contains a full set of references to all child pages, shells and so on. The `ShellView` object, however is immutable.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `shellDefinitionId` - the unique shellDefinitionId.
  Returns
    an immutable deep ShellView object if one exists, otherwise null.
  Throws
    `RemoteException`

### getShellDefinitions

    ShellDefinition[] getShellDefinitions(CustomizationContext customizationContext,
                                          String webapp)
                                          throws RemoteException

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

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `webapp` - the web application these shell definitions are scoped to.
  Returns
    an array of ShellDefinition objects if they exist, otherwise, an empty array.
  Throws
    `RemoteException`
  See Also
    `ShellDefinition`

### getShellDefinitions

    ShellDefinition[] getShellDefinitions(CustomizationContext customizationContext,
                                          String webapp,
                                          ShellDefinitionId firstShellDefinitionId,
                                          int limit)
                                          throws RemoteException

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

  Parameters
    `customizationContext` - customization information such as preferred locales.
    `webapp` - the web application these shell definitions are scoped to.
    `firstShellDefinitionId` - 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. To retrieve all the records specify a limit of zero. Note: some elements may be pruned because of entitlements.
  Returns
    array of `ShellDefinition`s no greater than `limit` in size.
  Throws
    `RemoteException`

### getShellDefinition

    ShellDefinition getShellDefinition(CustomizationContext customizationContext,
                                       ShellDefinitionId shellDefinitionId)
                                       throws RemoteException

  Getter for returning a single `ShellDefinition` object given a supplied shell definition identifier.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `shellDefinitionId` - the unique shell definition identifier.
  Returns
    a `ShellDefinition` object fully populated and internationalized, otherwise, `null>/code> if the object does not exist.`
  Throws
    `RemoteException`
  See Also
    `ShellDefinition`

### createShellDefinition

    ShellDefinition createShellDefinition(CustomizationContext customizationContext,
                                          ShellDefinition shellDefinition)
                                          throws MissingDataException,
                                                 NotEntitledException,
                                                 RemoteException

  Creates a new ShellView Definition with its placeholders.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `shellDefinition` - the shell data and associated placeholders
  Returns
    a fully populated ShellDefinition
  Throws
    `MissingDataException` - the shellDefinition supplied as an argument is missing some vital data.
    `NotEntitledException` - the caller is not entitled to create a new shell.
    `RemoteException`

### updateShellDefinition

    void updateShellDefinition(CustomizationContext customizationContext,
                               ShellDefinition shellDefinition)
                               throws ObjectNotFoundException,
                                      NotEntitledException,
                                      RemoteException

  Update the shell definition with the new data.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `shellDefinition` - the shell definition containing the new data
  Throws
    `ObjectNotFoundException` - if the LocalizationIntersectionId in the LocalizationResource is bogus.
    `NotEntitledException`
    `RemoteException`

### deleteShellDefinition

    void deleteShellDefinition(CustomizationContext customizationContext,
                               ShellDefinitionId shellDefinitionId)
                               throws ObjectNotFoundException,
                                      ObjectInUseException,
                                      NotEntitledException,
                                      RemoteException

  Delete a shell definition.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `shellDefinitionId` - the id of the shell definition to delete.
  Throws
    `ObjectNotFoundException` - if the shellDefinitionId is bogus
    `ObjectInUseException` - if page instances are currently using this shell
    `NotEntitledException` - the caller is not entitled to perform this operation.
    `RemoteException`
  See Also
    `deleteShellDefinitionWithReplacement(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.ShellDefinitionId, com.bea.netuix.application.identifier.ShellDefinitionId)`

### deleteShellDefinitionWithReplacement

    void deleteShellDefinitionWithReplacement(CustomizationContext customizationContext,
                                              ShellDefinitionId deleteShellDefinitionId,
                                              ShellDefinitionId replacementShellDefinitionId)
                                              throws ObjectNotFoundException,
                                                     NotEntitledException,
                                                     RemoteException

  Delete a shell definition and replace any uses of that shell with a replacement shell. This method is useful for deleting a shell that is in use by book instances without having to delete those book instances.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId returned.
    `deleteShellDefinitionId` - the id of the shell definition to delete.
    `replacementShellDefinitionId` - the id of the replacement shell
  Throws
    `ObjectNotFoundException` - if either of the shellDefinitionIds are bogus
    `NotEntitledException` - the caller is not entitled to perform this operation.
    `RemoteException`
  See Also
    `deleteShellDefinition(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.ShellDefinitionId)`

### getShellDefinitionId

    ShellDefinitionId getShellDefinitionId(CustomizationContext customizationContext,
                                           String markupName,
                                           String webAppName)
                                           throws RemoteException

  Getter for returning a single `ShellDefinitionId` object given a supplied shell markup name.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId.
    `markupName` - the markupName attribute supplied on the `netuix:shell` element in the owning .shell file
    `webAppName` - as defined in the config.xml
  Returns
    shellDefinitionId the unique shell definition identifier or null if none exist.
  Throws
    `RemoteException`

### getShellDefinitionFromFile

    ShellDefinition getShellDefinitionFromFile(CustomizationContext customizationContext,
                                               String shellFile,
                                               String webAppName)
                                               throws RemoteException

  Return a shell definition with the shellFile equal to the supplied filePath. The `webAppName` name is the deployed name of the module, and is often the name of the WAR file or directory, although this is not always the case. This name is that name given in config.xml as the Name of the WebAppComponent element (and thus WebAppComponentMBean's Name attribute). Note that this name is not the name of the URL context root.

  Parameters
    `customizationContext` - customization information such as preferred locales and desktopInstanceId.
    `shellFile` - the relative path to the shell file from the webapp directory example "/framework/markup/headfooter.shell"
    `webAppName` - as defined in the config.xml
  Throws
    `RemoteException`

### getVisibleShellLocalizationResources

    SortableFilterablePagedResult<LocalizationResourceView> getVisibleShellLocalizationResources(CustomizationContext customizationContext,
                                                                                                 WebAppSearchCriteria criteria,
                                                                                                 int pageSize)
                                                                                                 throws RemoteException

  Retrieve the LocalizationResourceViews for all visible shells for a given locale and webapp.

  The returned PagedResult is sortable and filterable on the field "TITLE", and supports these filter methods:
  - FilterMethod.UNFILTERED
  - FilterMethod.BEGINS_WITH
  - FilterMethod.ENDS_WITH
  - FilterMethod.CONTAINS
  - FilterMethod.EQUALS
  However, the reSort and reFilter methods on the returned PagedResult ignore their locale arguments. If you want to requery with a different locale, you should call this method again after setting the desired locale in the CustomizationContext.

  Parameters
    `customizationContext` - - a customization context with a request and locale defined. Only the first locale is used.
    `criteria` - criteria for the search, including the name of the web application where the requested resources live
    `pageSize` - - number of results to retrieve per page
  Returns
    the paged result object
  Throws
    `RemoteException`

### getShellDefinitions

    SortableFilterablePagedResult<ShellDefinition> getShellDefinitions(CustomizationContext customizationContext,
                                                                       WebAppSearchCriteria criteria,
                                                                       int pageSize)
                                                                       throws RemoteException

  Get all the shell definitions in the webapp as a paged object.

  The returned PagedResult is sortable and filterable on the field "TITLE", and supports these filter methods:
  - FilterMethod.UNFILTERED
  - FilterMethod.BEGINS_WITH
  - FilterMethod.ENDS_WITH
  - FilterMethod.CONTAINS
  - FilterMethod.EQUALS
  However, the reSort and reFilter methods on the returned PagedResult ignore their locale arguments. If you want to requery with a different locale, you should call this method again after setting the desired locale in the CustomizationContext.

  Parameters
    `customizationContext` - customization information such as preferred locales and http request.
    `criteria` - used to specify the webapp
    `pageSize` - the number of item per page in the result.
  Throws
    `RemoteException`

### addPlaceable

    PlaceableInstance addPlaceable(CustomizationContext customizationContext,
                                   ShellDefinitionId shellDefinitionId,
                                   boolean isHeader,
                                   PlaceableDefinitionId placeableDefinitionId,
                                   PlaceholderDefinitionId placeholderDefinitionId,
                                   int position)
                                   throws RemoteException,
                                          ObjectNotFoundException,
                                          MissingDataException,
                                          NotEntitledException,
                                          IllegalDependencyException,
                                          DuplicateObjectException

  Create a new instance of a placeable (portlet or book) by placing the definition in a placeholder in the header or footer layout of the shell.

  Parameters
    `customizationContext` - customization information such as preferred locales.
    `shellDefinitionId` - the id of the shell to place the placeable.
    `isHeader` - true if the placeable is to go in the header layout of the shell; false if it should go into the footer.
    `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 shell
    `RemoteException`

### deletePlacements

    void deletePlacements(CustomizationContext customizationContext,
                          ShellDefinitionId shellDefinitionId)
                          throws RemoteException,
                                 ObjectNotFoundException,
                                 MissingDataException

  Delete all placements for a shell.

  Throws
    `RemoteException`
    `ObjectNotFoundException`
    `MissingDataException`

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

Copyright © 2008 BEA Systems, Inc. All Rights Reserved