com.bea.netuix.application.manager
Interface IDesktopDefinitionManager

All Known Subinterfaces:
DesktopDefinitionManager

public interface IDesktopDefinitionManager

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

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
 DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext, DesktopDefinition desktopDefinition)
           Creates a new desktop definition in the persistent store.
 DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext, DesktopView desktopView, String webappName)
          Create a new desktop definition in the persistent store from the given view.
 DesktopDefinition createDesktopFromTemplate(CustomizationContext customizationContext, TemplateId templateId, LocalizationResource desktopLocalizationResource, PortalPath portalPath, DesktopPath desktopPath)
          Creates a new desktop definition from a template.
 DesktopDefinition createDesktopTemplate(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId, LocalizationResource templateLocalizationResource, PortalPath portalPath, DesktopPath desktopPath, boolean isGlobal)
          Creates a new desktop definition from an existing desktop and marks it as a template.
 DesktopDefinition createDesktopTemplate(CustomizationContext customizationContext, DesktopView desktopView, String webappName, boolean isGlobal)
          Create a new desktop template in the persistent store from the given view.
 void deleteDesktopDefinition(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)
          Delete the DesktopDefinition of the supplied desktop definition identifier.
 void deleteDesktopDefinitionWithCascade(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)
          Delete the DesktopDefinition of the supplied desktop definition id and all desktop instances associated with this definition.
 DesktopDefinition getDesktopDefinition(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)
          Getter for returning a single DesktopDefinition object given a supplied desktop definition identifier.
 DesktopDefinition[] getDesktopDefinitions(CustomizationContext customizationContext, String webapp)
          Getter for returning a list of all DesktopDefinitions scoped to the supplied webapp.
 DesktopDefinition[] getDesktopDefinitions(CustomizationContext customizationContext, String webapp, PortalPath portalPath, DesktopPath firstDesktopPath, int limit)
          Returns DesktopDefinitions in desktopPath order (create order), starting with the supplied desktopPath and limiting the result set to size limit.
 SortableFilterablePagedResult<DesktopDefinition> getDesktopDefinitions(CustomizationContext customizationContext, WebAppSearchCriteria criteria, int pageSize)
          Get all the desktop definitions in the webapp, as a paged object.
 DesktopView getDesktopView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)
          Getter for returning an immutable deep DesktopView.
 DesktopView getShallowDesktopView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)
          Getter for returning an immutable shallow DesktopView.
 SortableFilterablePagedResult<LocalizationResourceView> getVisibleDesktopLocalizationResources(CustomizationContext customizationContext, WebAppSearchCriteria criteria, int pageSize)
          Retrieve the LocalizationResourceViews for all visible desktops for a given locale and webapp.
 DesktopDefinition[] searchDesktopDefinitions(CustomizationContext customizationContext, String webapp, PortalPath portalPath, String partialDesktopTitle, int limit)
          Search for desktop definitions given the supplied search string.
 void updateDesktopDefinition(CustomizationContext customizationContext, DesktopDefinition desktopDefinition)
          Update the persistent store for the supplied DesktopDefinition.
 

Method Detail

getDesktopView

DesktopView getDesktopView(CustomizationContext customizationContext,
                           DesktopDefinitionId desktopDefinitionId)
                           throws RemoteException

Getter for returning an immutable deep DesktopView. The DesktopView object, unlike the DesktopDefinition or the DesktopInstance objects contains a full set of references to all child shells, pages, books and so on. The DesktopView object, however is immutable.

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

getShallowDesktopView

DesktopView getShallowDesktopView(CustomizationContext customizationContext,
                                  DesktopDefinitionId desktopDefinitionId)
                                  throws RemoteException

Getter for returning an immutable shallow DesktopView. See the comments in DesktopView for a description of what "shallow" means. The DesktopView object, unlike the DesktopDefinition or the DesktopInstance objects contains a reference to the main book. To recurse through child books and pages, use the paginated BookView.getPagedNavigableViews and PageView.getPagedPlaceableViews . The DesktopView object is immutable.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
desktopDefinitionId - the unique desktopDefinitionId.
Returns
an immutable shallow DesktopView object if one exists, otherwise null.
Throws
RemoteException

getDesktopDefinitions

DesktopDefinition[] getDesktopDefinitions(CustomizationContext customizationContext,
                                          String webapp)
                                          throws RemoteException

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

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
webapp - the web application these desktop definitions are scoped to.
Returns
an iterator of DesktopDefinition objects if they exist, otherwise, an empty iterator.
Throws
RemoteException

getDesktopDefinition

DesktopDefinition getDesktopDefinition(CustomizationContext customizationContext,
                                       DesktopDefinitionId desktopDefinitionId)
                                       throws RemoteException

Getter for returning a single DesktopDefinition object given a supplied desktop definition identifier.

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

getDesktopDefinitions

DesktopDefinition[] getDesktopDefinitions(CustomizationContext customizationContext,
                                          String webapp,
                                          PortalPath portalPath,
                                          DesktopPath firstDesktopPath,
                                          int limit)
                                          throws RemoteException

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

Parameters
customizationContext - customization information such as preferred locales.
webapp - the web application these desktop definitions are scoped to.
portalPath - the portal path to which these desktop definitions are scoped to.
firstDesktopPath - 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 DesktopDefinitions no greater than limit in size.
Throws
RemoteException

searchDesktopDefinitions

DesktopDefinition[] searchDesktopDefinitions(CustomizationContext customizationContext,
                                             String webapp,
                                             PortalPath portalPath,
                                             String partialDesktopTitle,
                                             int limit)
                                             throws RemoteException

Search for desktop definitions given the supplied search string. Desktops with titles matching the supplied pattern will be returned. No more than limit results will be returned; however a smaller number may be returned. The implmentation has to ensure that repeated calls to this method return DesktopDefinitions in a consistent order.

Parameters
customizationContext - customization information such as preferred locales.
webapp - the web application these desktop definitions are scoped to.
portalPath - a portal path to which the desktops are scoped, if null then all portal paths are searched.
partialDesktopTitle - the search string for desktop title match. Note: this string may contain special '*' and '?' characters, where '*' matches any number of characters and '?' matches any single character.
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 DesktopDefinitions no greater than limit in size.
Throws
RemoteException

deleteDesktopDefinition

void deleteDesktopDefinition(CustomizationContext customizationContext,
                             DesktopDefinitionId desktopDefinitionId)
                             throws RemoteException,
                                    ObjectNotFoundException,
                                    ObjectInUseException,
                                    NotEntitledException

Delete the DesktopDefinition of the supplied desktop definition identifier.

This is the same method as deleteDesktopDefinitionWithCascade, except that this method throws an ObjectInUseException if the desktop definition has current customizations defined.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
desktopDefinitionId - the unique desktop definition identifier of the desktop to delete.
Throws
ObjectNotFoundException - if there is no DesktopDefinition associated with desktopDefinitionId.
ObjectInUseException - if this desktop definition is currently being used by desktop (user) instances.
NotEntitledException - if the caller does not have the required permissions to delete this object.
RemoteException

deleteDesktopDefinitionWithCascade

void deleteDesktopDefinitionWithCascade(CustomizationContext customizationContext,
                                        DesktopDefinitionId desktopDefinitionId)
                                        throws RemoteException,
                                               ObjectNotFoundException,
                                               NotEntitledException

Delete the DesktopDefinition of the supplied desktop definition id and all desktop instances associated with this definition.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
desktopDefinitionId - the unique desktop definition identifier of the desktop to delete.
Throws
ObjectNotFoundException - if there is no DesktopDefinition associated with desktopDefinitionId.
NotEntitledException - if the caller does not have the required permissions to delete this object.
RemoteException

updateDesktopDefinition

void updateDesktopDefinition(CustomizationContext customizationContext,
                             DesktopDefinition desktopDefinition)
                             throws RemoteException,
                                    ObjectNotFoundException,
                                    NotEntitledException

Update the persistent store for the supplied DesktopDefinition. All attributes of the DesktopDefinition, except template, are updated in the persistent store.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
desktopDefinition - the object containing the new data for the desktop definition.
Throws
ObjectNotFoundException - the DesktopDefinitionIdNotEntitledException - if the caller does not have the required permissions to delete this object.
RemoteException

createDesktopDefinition

DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext,
                                          DesktopDefinition desktopDefinition)
                                          throws RemoteException,
                                                 MissingDataException,
                                                 ObjectNotFoundException,
                                                 NotEntitledException,
                                                 DuplicateObjectException

Creates a new desktop definition in the persistent store. This definition may be used to create desktop instances later on.

Parameters
customizationContext - customization information such as preferred locales and desktopInstanceId
desktopDefinition - the desktop definition object containing all the required data.
Returns
the fully populated (DesktopDefinitionId) DesktopDefinition
Throws
MissingDataException - if some vital information is missing from the DesktopDefinition.
NotEntitledException - if the caller does not have the required permissions to delete this object.
DuplicateObjectException - if the portalPath and desktopPath combination already exist in the database
RemoteException
ObjectNotFoundException

createDesktopDefinition

DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext,
                                          DesktopView desktopView,
                                          String webappName)
                                          throws RemoteException,
                                                 MissingDataException,
                                                 ObjectNotFoundException,
                                                 NotEntitledException,
                                                 ViewDisassemblerException,
                                                 DuplicateObjectException,
                                                 DuplicateDefinitionException

Create a new desktop definition in the persistent store from the given view. The view is typically constructed via the XmlDisassembler.

Parameters
customizationContext - customization information such as preferred locales, username and request, and most importantly disassemblerTemplateAction.
desktopView - desktop view that has all the necessary information to create a desktop definition.
webappName - the name of the webapp
Returns
the desktop definition object containing all the required data.
Throws
MissingDataException - If some vital information is missing from the DesktopVeiw.
NotEntitledException - If the caller does not have the required permissions to create a desktop definition.
ViewDisassemblerException - If unable to disassemble the given desktop view desktopView. typically caused by some bad markup names in the view.
DuplicateObjectException - if the portalPath and desktopPath combination already exist in the database
DuplicateDefinitionException - if a book or page with the same definition label already exist in the database.
RemoteException
ObjectNotFoundException
See Also
CustomizationContext.setDisassemblerTemplateAction(int), XmlDisassembler

createDesktopTemplate

DesktopDefinition createDesktopTemplate(CustomizationContext customizationContext,
                                        DesktopView desktopView,
                                        String webappName,
                                        boolean isGlobal)
                                        throws RemoteException,
                                               MissingDataException,
                                               ObjectNotFoundException,
                                               NotEntitledException,
                                               ViewDisassemblerException,
                                               DuplicateObjectException,
                                               DuplicateDefinitionException

Create a new desktop template in the persistent store from the given view. The view is typically constructed via the XmlDisassembler.

Parameters
customizationContext - customization information such as preferred locales, username and request, and most importantly disassemblerTemplateAction.
desktopView - desktop view that has all the necessary information to create a desktop definition.
webappName - the name of the webapp
isGlobal - true if the desktop template should be marked global, false otherwise
Returns
the template desktop object containing all the required data.
Throws
MissingDataException - If some vital information is missing from the DesktopVeiw.
NotEntitledException - If the caller does not have the required permissions to create a desktop definition.
ViewDisassemblerException - If unable to disassemble the given desktop view desktopView. typically caused by some bad markup names in the view.
DuplicateObjectException - if the portalPath and desktopPath combination already exist in the database
DuplicateDefinitionException - if a book or page with the same definition label already exist in the database.
RemoteException
ObjectNotFoundException
See Also
CustomizationContext.setDisassemblerTemplateAction(int), XmlDisassembler

createDesktopTemplate

DesktopDefinition createDesktopTemplate(CustomizationContext customizationContext,
                                        DesktopDefinitionId desktopDefinitionId,
                                        LocalizationResource templateLocalizationResource,
                                        PortalPath portalPath,
                                        DesktopPath desktopPath,
                                        boolean isGlobal)
                                        throws RemoteException,
                                               ObjectNotFoundException,
                                               IllegalArgumentException,
                                               NotEntitledException,
                                               DuplicateObjectException
Creates a new desktop definition from an existing desktop and marks it as a template.

Parameters
customizationContext - customization information such as preferred locales, username and request
desktopDefinitionId - DesktopDefinitionId of desktop to be used to create desktop template
templateLocalizationResource - optional LocalizationResource for the template being created. If null LocalizationResource from the underlying desktop will be used
portalPath - portal path for the portal that the newly created template desktop will get assigned to
desktopPath - desktop path for the newly created template desktop
isGlobal - true if this template is global
Returns
DesktopDefinition marked as a template
Throws
ObjectNotFoundException - if no desktop matching desktopDefinitionId exists
IllegalArgumentException - if input data is incorrect for e.g.: portal does not exist and portalLocalizationResource is null
NotEntitledException - if the caller does not have the required permissions to create a desktop definition and a template
DuplicateObjectException - if the desktopPath already exists in the database
RemoteException

createDesktopFromTemplate

DesktopDefinition createDesktopFromTemplate(CustomizationContext customizationContext,
                                            TemplateId templateId,
                                            LocalizationResource desktopLocalizationResource,
                                            PortalPath portalPath,
                                            DesktopPath desktopPath)
                                            throws RemoteException,
                                                   ObjectNotFoundException,
                                                   IllegalArgumentException,
                                                   NotEntitledException,
                                                   DuplicateObjectException,
                                                   MissingDataException
Creates a new desktop definition from a template. The template type can only be of type TemplateTypeDefinition.TemplateType.DESKTOP.

Parameters
customizationContext - customization information such as preferred locales, username and request
templateId - unique identifier of the template to use
desktopLocalizationResource - optional localization resource for desktop to be created when the template is of type TemplateTypeDefinition.TemplateType.DESKTOP. If null localization resource from the desktop template will be used
portalPath - portal path if a new PortalDefinition needs to be created. May be null in which case the new desktop will be created in the same portal as the template
desktopPath - desktopPath for the new DesktopDefinition to be created
Returns
DesktopDefinition
Throws
ObjectNotFoundException - if template matching TemplateId is not found
IllegalArgumentException - if input data is invalid e.g. portalPath is specified without a portalLocalizationResource
NotEntitledException - if the caller does not have the required permissions to create a desktop definition
DuplicateObjectException - if DesktopDefinition matching desktopPath already exists
MissingDataException - if any input data is missing
RemoteException

getVisibleDesktopLocalizationResources

SortableFilterablePagedResult<LocalizationResourceView> getVisibleDesktopLocalizationResources(CustomizationContext customizationContext,
                                                                                               WebAppSearchCriteria criteria,
                                                                                               int pageSize)
                                                                                               throws RemoteException
Retrieve the LocalizationResourceViews for all visible desktops 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 - - the 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

getDesktopDefinitions

SortableFilterablePagedResult<DesktopDefinition> getDesktopDefinitions(CustomizationContext customizationContext,
                                                                       WebAppSearchCriteria criteria,
                                                                       int pageSize)
                                                                       throws RemoteException
Get all the desktop definitions in the webapp, as a paged object. The returned PagedResult is sortable and filterable on the fields "TITLE" and "DESCRIPTION", 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


Copyright © 2011, Oracle. All rights reserved.