© 2005 BEA Systems, Inc.

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 prefered locale. Also, all methods are entitled, meaning if the caller does not have the required credentials the method may return a subset of the actual list or be unable to perform the specified function.


Method Summary
 DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext, DesktopDefinition desktopDefinition)
          Creates new desktop definition.
 DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext, DesktopView desktopView, String webappName)
          Create new desktop definition 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).
 DesktopView getDesktopView(CustomizationContext customizationContext, DesktopDefinitionId desktopDefinitionId)
          Getter for returning an immutable deep copy of a DesktopView.
 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 desktopDefintion)
          Update the persistent store for the supplied DesktopDefinition.
 

Method Detail

createDesktopDefinition

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

Creates new desktop definition. Creates a new desktop definition in the persistent store. This definition may be used to create desktop instance 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

public DesktopDefinition createDesktopDefinition(CustomizationContext customizationContext,
                                                 DesktopView desktopView,
                                                 String webappName)
                                          throws RemoteException,
                                                 MissingDataException,
                                                 ObjectNotFoundException,
                                                 NotEntitledException,
                                                 com.bea.netuix.application.transform.disassembler.view.ViewDisassemblerException,
                                                 DuplicateObjectException,
                                                 DuplicateDefinitionException

Create 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.
com.bea.netuix.application.transform.disassembler.view.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

deleteDesktopDefinition

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

Delete the DesktopDefinition of the supplied desktop definition identifier.

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

public 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

getDesktopDefinition

public 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

public 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

getDesktopDefinitions

public 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.
Implementation 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. For 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

getDesktopView

public DesktopView getDesktopView(CustomizationContext customizationContext,
                                  DesktopDefinitionId desktopDefinitionId)
                           throws RemoteException

Getter for returning an immutable deep copy of a 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 copy DesktopView object if one exist, otherwise null.
Throws:
RemoteException

searchDesktopDefinitions

public 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. Implementation 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 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 DesktopDefinitions no greater than limit in size.
Throws:
RemoteException

updateDesktopDefinition

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

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

Parameters:
customizationContext - customization information such as preferred locales and desktopInstanceId
desktopDefintion - 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

© 2005 BEA Systems, Inc.

Copyright © 2005 BEA Systems, Inc. All Rights Reserved