Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2003 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.netuix.application.manager
Interface IThemeDefinitionManager

All Known Subinterfaces:
  LookAndFeelDefinitionManager

All Known Implementing Classes:
  LookAndFeelDefinitionManagerImpl

public interface IThemeDefinitionManager

This is the primary interface for performing persistent store operations on `ThemeDefinitions`. 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
`ThemeDefinition` | `createThemeDefinition(CustomizationContext customizationContext, ThemeDefinition themeDefinition)` Creates a new ThemeView Definition with its placeholders.
`void` | `deleteThemeDefinition(CustomizationContext customizationContext, ThemeDefinitionId themeDefinitionId)` Delete a theme definition that is not in use.
`void` | `deleteThemeDefinitionWithCascade(CustomizationContext customizationContext, ThemeDefinitionId themeDefinitionId)` Delete a theme definition and remove anrefernces to it from book, pages or portlets This method is useful for deleting a theme that is in use by book, pages or portlets.
`ThemeDefinition` | `getThemeDefinition(CustomizationContext customizationContext, ThemeDefinitionId themeDefinitionId)` Getter for returning a single `ThemeDefinition` object given a supplied theme definition identifier.
`ThemeDefinition` | `getThemeDefinitionFromFile(CustomizationContext customizationContext, String themeFile, String webAppName)` Getter for returning a single `ThemeDefinition` object given a supplied theme file name.
`ThemeDefinitionId` | `getThemeDefinitionId(CustomizationContext customizationContext, String markupName, String webAppName)` Getter for returning a single `ThemeDefinitionId` object given a supplied theme markup name and webapp.
`ThemeDefinition[]` | `getThemeDefinitions(CustomizationContext customizationContext, String webapp)` Getter for returning a list of all `ThemeDefinitions` scoped to the supplied webapp.
`ThemeView` | `getThemeView(CustomizationContext customizationContext, ThemeDefinitionId themeDefinitionId)` Getter for returning an immutable deep copy of a `ThemeView`.
`void` | `updateThemeDefinition(CustomizationContext customizationContext, ThemeDefinition themeDefinition)` Update the theme definition with the new data.

Method Detail

### getThemeView

    public ThemeView getThemeView(CustomizationContext customizationContext,
                                  ThemeDefinitionId themeDefinitionId)
                           throws RemoteException

  Getter for returning an immutable deep copy of a `ThemeView`. The `ThemeView` object, unlike the `ThemeDefinition` or the `ThemeInstance` objects contains a full set of references to all child pages, themes and so on. The `ThemeView` object however is immutable.

  Parameters:
    `customizationContext` - customization information such as prefered locales and desktopInstanceId returned.
    `themeDefinitionId` - the unique themeDefinitionId.
  Returns:
    an immutable deep copy ThemeView object if one exist, otherwise null.
    `RemoteException`

### getThemeDefinitions

    public ThemeDefinition[] getThemeDefinitions(CustomizationContext customizationContext,
                                                 String webapp)
                                          throws RemoteException

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

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `webapp` - the web application these theme definitions are scoped to.
  Returns:
    an array of `ThemeDefinition` objects if they exist, otherwise, an empty array.
    `RemoteException`
  See Also:
    `ThemeDefinition`

### getThemeDefinition

    public ThemeDefinition getThemeDefinition(CustomizationContext customizationContext,
                                              ThemeDefinitionId themeDefinitionId)
                                       throws RemoteException

  Getter for returning a single `ThemeDefinition` object given a supplied theme definition identifier.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `themeDefinitionId` - the unique theme definition identifier.
  Returns:
    a `ThemeDefinition` object fully populated and internationalized, otherwise, `null>/code> if the object does not exist.`
    `RemoteException`
  See Also:
    `ThemeDefinition`

### getThemeDefinitionFromFile

    public ThemeDefinition getThemeDefinitionFromFile(CustomizationContext customizationContext,
                                                      String themeFile,
                                                      String webAppName)
                                               throws RemoteException

  Getter for returning a single `ThemeDefinition` object given a supplied theme file name.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `themeFile` - the unique theme definition identifier.
  Returns:
    a `ThemeDefinition` object fully populated and internationalized, otherwise, `null>/code> if the object does not exist.`
    `RemoteException`
  See Also:
    `ThemeDefinition`

### createThemeDefinition

    public ThemeDefinition createThemeDefinition(CustomizationContext customizationContext,
                                                 ThemeDefinition themeDefinition)
                                          throws RemoteException,
                                                 MissingDataException,
                                                 NotEntitledException

  Creates a new ThemeView Definition with its placeholders. Note, while themes can be created via this method they should be created via a .theme file located anywhere in the webapp directory. Once the file is created it will be immediately be picked up by the system.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `themeDefinition` - the theme data and associated placeholders
  Returns:
    a fully populated ThemeDefinition
  Throws:
    `MissingDataException` - the themeDefiniiton supplied as an argument is missing some vital data.
    `NotEntitledException` - the caller is not entitled to create a new theme.
    `RemoteException`

### updateThemeDefinition

    public void updateThemeDefinition(CustomizationContext customizationContext,
                                      ThemeDefinition themeDefinition)
                               throws RemoteException,
                                      ObjectNotFoundException,
                                      NotEntitledException

  Update the theme definition with the new data.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `themeDefinition` - the themedefinition containing the new data
  Throws:
    `ObjectNotFoundException` - if the LocalizationIntersectionId in the LocalizationDefnition is bogus.
    `RemoteException`
    `NotEntitledException`

### deleteThemeDefinition

    public void deleteThemeDefinition(CustomizationContext customizationContext,
                                      ThemeDefinitionId themeDefinitionId)
                               throws RemoteException,
                                      ObjectNotFoundException,
                                      ObjectInUseException,
                                      NotEntitledException

  Delete a theme definition that is not in use.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request
    `themeDefinitionId` - the id of the theme definition to delete.
  Throws:
    `ObjectNotFoundException` - if the themeDefinitionId is bogus
    `ObjectInUseException` - if pages,book or portlet instances are currently using this theme.
    `NotEntitledException` - the caller is not entitled to perform this operation.
    `RemoteException`
  See Also:
    `deleteThemeDefinitionWithCascade(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.ThemeDefinitionId)`

### deleteThemeDefinitionWithCascade

    public void deleteThemeDefinitionWithCascade(CustomizationContext customizationContext,
                                                 ThemeDefinitionId themeDefinitionId)
                                          throws RemoteException,
                                                 ObjectNotFoundException,
                                                 NotEntitledException

  Delete a theme definition and remove anrefernces to it from book, pages or portlets This method is useful for deleting a theme that is in use by book, pages or portlets.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `themeDefinitionId` - the id of the theme definition to delete.
  Throws:
    `ObjectNotFoundException` - if either of the themeDefinitionIds are bogus
    `NotEntitledException` - the caller is not entitled to perform this operation.
    `RemoteException`
  See Also:
    `deleteThemeDefinition(com.bea.netuix.application.manager.CustomizationContext, com.bea.netuix.application.identifier.ThemeDefinitionId)`

### getThemeDefinitionId

    public ThemeDefinitionId getThemeDefinitionId(CustomizationContext customizationContext,
                                                  String markupName,
                                                  String webAppName)
                                           throws RemoteException

  Getter for returning a single `ThemeDefinitionId` object given a supplied theme markup name and webapp.

  Parameters:
    `customizationContext` - customization information such as prefered locales and http request.
    `markupName` - the markup name attribute supplied on the tag in the .laf file
    `webAppName` - as defined in the config.xml
  Returns:
    ThemeDefinitionId the unique theme definition identifier or null is non existent.
    `RemoteException`

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2003 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003 BEA Systems, Inc. All Rights Reserved