© 2005 BEA Systems, Inc.

com.bea.netuix.application.manager
Interface ILayoutDefinitionManager

All Known Subinterfaces:
PageDefinitionManager

public interface ILayoutDefinitionManager

This is the primary interface for performing persistent store operations on LayoutDefinitions. 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 effecting a single desktop then use the PortalCustomizationManager and make changes to the "Instances".


Method Summary
 LayoutDefinition createLayoutDefinition(CustomizationContext customizationContext, LayoutDefinition layoutDefinition)
          Creates a new LayoutView Definition with its placeholders.
 void deleteLayoutDefinition(CustomizationContext customizationContext, LayoutDefinitionId layoutDefinitionId)
          Delete a layout definition and all its associated placeholders.
 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.
 LayoutDefinition getLayoutDefinition(CustomizationContext customizationContext, LayoutDefinitionId layoutDefinitionId)
          Getter for returning a single LayoutDefinition object given a supplied layout definition identifier.
 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.
 LayoutDefinitionId getLayoutDefinitionId(CustomizationContext customizationContext, String markupName, String webAppName)
          Getter for returning a single LayoutDefinitionId object given a supplied layout markup name.
 LayoutDefinition[] getLayoutDefinitions(CustomizationContext customizationContext, String webapp)
          Getter for returning a list of all LayoutDefinitions scoped to the supplied webapp.
 LayoutDefinition[] getLayoutDefinitions(CustomizationContext customizationContext, String webapp, LayoutDefinitionId firstLayoutDefinitionId, int limit)
          Returns LayoutDefinitions in definitionId order (create order).
 PlaceholderDefinitionId getPlaceholderDefinitionId(CustomizationContext customizationContext, LayoutDefinitionId layoutDefinitionId, int layoutLocation)
          Getter for returning a single PlaceholderDefinitionId object given a supplied placeholder markup name.
 void updateLayoutDefinition(CustomizationContext customizationContext, LayoutDefinition layoutDefinition)
          Update the layout definition with the new data.
 

Method Detail

createLayoutDefinition

public LayoutDefinition createLayoutDefinition(CustomizationContext customizationContext,
                                               LayoutDefinition layoutDefinition)
                                        throws RemoteException,
                                               MissingDataException,
                                               NotEntitledException
Creates a new LayoutView Definition with its placeholders.

Parameters:
customizationContext - customization information such as preferred locales and desktopInstanceId
layoutDefinition - the layout data and associated placeholders
Returns:
a fully populated LayoutDefinition
Throws:
MissingDataException - the layoutDefiniiton supplied as an argument is missing some vital data.
NotEntitledException - the caller is not entitled to create a new layout.
RemoteException

deleteLayoutDefinition

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

Delete a layout definition and all its associated placeholders.

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

deleteLayoutDefinitionWithReplacement

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

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 preferred locales and desktopInstanceId
deleteLayoutDefinitionId - the id of the layout definition to delete.
replacementLayoutDefinitionId - the id of the replacement layout
Throws:
ObjectNotFoundException - if either of the layoutDefinitionIds are bogus
NotEntitledException - the caller is not entitled to perform this operation.
RemoteException
See Also:
deleteLayoutDefinition(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.LayoutDefinitionId)

getLayoutDefinition

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

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

Parameters:
customizationContext - customization information such as preferred 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.
Throws:
RemoteException
See Also:
LayoutDefinition

getLayoutDefinitionFromFile

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

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

Parameters:
customizationContext - customization information such as preferred 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.
Throws:
RemoteException
See Also:
LayoutDefinition

getLayoutDefinitionId

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

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

Parameters:
customizationContext - customization information such as preferred 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.
Throws:
RemoteException

getLayoutDefinitions

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

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

Parameters:
customizationContext - customization information such as preferred 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.
Throws:
RemoteException
See Also:
LayoutDefinition

getLayoutDefinitions

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

Returns LayoutDefinitions in definitionId order (create order). Starting with the supplied definitionId and limiting the result set to size limit. If fewer LayoutDefinitions 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 LayoutDefinitions 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 LayoutDefinitions no greater than limit in size.
Throws:
RemoteException

getPlaceholderDefinitionId

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

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

Parameters:
customizationContext - customization information such as preferred locales and desktopInstanceId
Returns:
PlaceholderDefinitionId the unique placeholder definition identifier or null if none exist.
Throws:
RemoteException

updateLayoutDefinition

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

Update the layout definition with the new data.

Parameters:
customizationContext - customization information such as preferred locales and desktopInstanceId
layoutDefinition - the layout definition containing the new data
Throws:
ObjectNotFoundException - if the LocalizationIntersectionId in the LocalizationResource is bogus.
MissingDataException - if layoutDefinition is missing required data.
RemoteException
NotEntitledException

© 2005 BEA Systems, Inc.

Copyright © 2005 BEA Systems, Inc. All Rights Reserved