Interface UIExtensionManager

All Known Implementing Classes:
UIExtensionManagerImpl

public interface UIExtensionManager
This class is used to manage all the extensions available into the system. The main target is to first add the ability to add new extension dynamically without changing anything in the source code. Created by The eXo Platform SAS Author : eXoPlatform nicolas.filotto@exoplatform.com May 04, 2009
  • Method Details

    • addUIExtension

      UIComponent addUIExtension(String extensionType, String extensionName, Map<String,Object> context, UIContainer parent) throws Exception
      First check if the given extension exists, if so it checks if the extension can be added according (all filters that are mandatory) to the given context, if so it adds the extension to the parent and returns the extension otherwise it returns null
      Parameters:
      extensionType - the type of the extension, usually it is the FQN of the component that displays the extension
      extensionName - the name of the extension to add
      context - the context to check in order to know if the extension can be added
      parent - the parent component to which the extension must be added
      Returns:
      the component related to the extension if it can be added, null otherwise
      Throws:
      Exception - if an error occurs
    • addUIExtension

      UIComponent addUIExtension(UIExtension extension, Map<String,Object> context, UIContainer parent) throws Exception
      It checks if the extension can be added (all filters that are mandatory) according to the given context, if so it adds the extension to the parent and returns the extension otherwise it returns null
      Parameters:
      extension - the extension to add
      context - the context to check in order to know if the extension can be added
      parent - the parent component to which the extension must be added
      Returns:
      the component related to the extension if it can be added, null otherwise
      Throws:
      Exception - if an error occurs
    • accept

      boolean accept(String extensionType, String extensionName, Map<String,Object> context)
      Checks if all the filters pass, if one filter doesn't pass the method UIExtension.onDeny will be called
      Parameters:
      extensionType - the type of the extension, usually it is the FQN of the component that displays the extension
      extensionName - the name of the extension to add
      context - the context to check
      Returns:
      true if all the filter could pass, false otherwise
    • getUIExtensions

      List<UIExtension> getUIExtensions(String type)
      Gives all the extensions related to the given type
      Parameters:
      type - the type of the extension, usually it is the FQN of the component that displays the extension
      Returns:
      a list of all the extensions that belongs to the given owner
    • getUIExtension

      UIExtension getUIExtension(String type, String name)
      Give the extension corresponding to the given criteria
      Parameters:
      type - the type of the extension, usually it is the FQN of the component that displays the extension
      name - the name of the extension to get
      Returns:
      the corresponding UIExtension if it exists, null otherwise
    • registerUIExtension

      void registerUIExtension(UIExtension extension)
      Register a new extension
      Parameters:
      extension - the extension to register
    • registerUIExtensionPlugin

      void registerUIExtensionPlugin(UIExtensionPlugin extensionPlugin)
      Register all the extensions defined into the UIExtensionPlugin
      Parameters:
      extensionPlugin - the plugin to treat