com.tibbo.aggregate.common.plugin

## Class AbstractContextPlugin

- java.lang.Object
- - org.java.plugin.Plugin
  - - com.tibbo.aggregate.common.plugin.BasePlugin
    - - com.tibbo.aggregate.common.plugin.AbstractContextPlugin

- All Implemented Interfaces:
    AggreGatePlugin, ContextPlugin, java.lang.Comparable<AggreGatePlugin>
  Direct Known Subclasses:
    DemoServerPlugin

      public abstract class AbstractContextPlugin
      extends BasePlugin
      implements ContextPlugin

- - ### Field Summary

    - ### Fields inherited from class com.tibbo.aggregate.common.plugin.BasePlugin

      `INDEX_HIGH, INDEX_HIGHER, INDEX_HIGHEST, INDEX_LOW, INDEX_LOWER, INDEX_LOWEST, INDEX_NORMAL, INDEX_VERY_HIGH, INDEX_VERY_LOW`

    - ### Fields inherited from class org.java.plugin.Plugin

      `log`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractContextPlugin()`
    `AbstractContextPlugin(java.lang.String name)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `deinitialize()` This method is called right before plugin destruction.
    `void` | `deinstall(ContextManager<ServerContext> cm)` This method is called before server context tree is destroyed.
    `void` | `deinstall(ServerContext context)` This method is called when a server context is destroyed or removed upon server shutdown.
    `void` | `initialize()` This method is called right after plugin creation.
    `void` | `install(ContextManager<ServerContext> cm)` This method is called when server context tree is fully loaded.
    `void` | `install(ServerContext context)` This method is called when a new server context is created or loaded upon server startup.
    `void` | `launch()` This method is called in the very end of server startup.
    `void` | `shutdown()` This method is called in the very beginning of server shutdown.

    - ### Methods inherited from class com.tibbo.aggregate.common.plugin.BasePlugin

      `compareTo, createGlobalConfigContext, createGlobalConfigContext, createUserConfigContext, doStart, doStop, getDescription, getGlobalConfigContext, getId, getPluginDirector, getShortId, getSortIndex, getUserConfigContext, globalDeinit, globalInit, globalStart, globalStop, setDescription, setId, setIndex, setPluginDirector, userDeinit, userInit`

    - ### Methods inherited from class org.java.plugin.Plugin

      `getDescriptor, getManager, isActive, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.tibbo.aggregate.common.plugin.AggreGatePlugin

      `createGlobalConfigContext, createUserConfigContext, getDescription, getGlobalConfigContext, getId, getShortId, getSortIndex, getUserConfigContext, globalDeinit, globalInit, globalStart, globalStop, userDeinit, userInit`

- - ### Constructor Detail

    - #### AbstractContextPlugin

          public AbstractContextPlugin()

    - #### AbstractContextPlugin

          public AbstractContextPlugin(java.lang.String name)

  - ### Method Detail

    - #### initialize

          public void initialize()
                          throws PluginException

      Description copied from interface: `ContextPlugin`
      This method is called right after plugin creation.
      Specified by:
        `initialize` in interface `ContextPlugin`
      Throws:
        `PluginException`

    - #### deinitialize

          public void deinitialize()
                            throws PluginException

      Description copied from interface: `ContextPlugin`
      This method is called right before plugin destruction.
      Specified by:
        `deinitialize` in interface `ContextPlugin`
      Throws:
        `PluginException`

    - #### install

          public void install(ContextManager<ServerContext> cm)
                       throws ContextException,
                              PluginException

      Description copied from interface: `ContextPlugin`
      This method is called when server context tree is fully loaded.
      Specified by:
        `install` in interface `ContextPlugin`
      Parameters:
        `cm` - Server context manager
      Throws:
        `ContextException` - If some context API calls from within this method have thrown an exception
        `PluginException` - If plugin internal error occurred

    - #### deinstall

          public void deinstall(ContextManager<ServerContext> cm)
                         throws ContextException,
                                PluginException

      Description copied from interface: `ContextPlugin`
      This method is called before server context tree is destroyed.
      Specified by:
        `deinstall` in interface `ContextPlugin`
      Parameters:
        `cm` - Server context manager
      Throws:
        `ContextException` - If some context API calls from within this method have thrown an exception
        `PluginException` - If plugin internal error occurred

    - #### install

          public void install(ServerContext context)
                       throws ContextException,
                              PluginException

      Description copied from interface: `ContextPlugin`
      This method is called when a new server context is created or loaded upon server startup.
      Specified by:
        `install` in interface `ContextPlugin`
      Parameters:
        `context` - Server context
      Throws:
        `ContextException` - If some context API calls from within this method have thrown an exception
        `PluginException` - If plugin internal error occurred

    - #### deinstall

          public void deinstall(ServerContext context)
                         throws ContextException,
                                PluginException

      Description copied from interface: `ContextPlugin`
      This method is called when a server context is destroyed or removed upon server shutdown.
      Specified by:
        `deinstall` in interface `ContextPlugin`
      Parameters:
        `context` - Server context
      Throws:
        `ContextException` - If some context API calls from within this method have thrown an exception
        `PluginException` - If plugin internal error occurred

    - #### launch

          public void launch()
                      throws PluginException

      Description copied from interface: `ContextPlugin`
      This method is called in the very end of server startup.
      Specified by:
        `launch` in interface `ContextPlugin`
      Throws:
        `PluginException` - If plugin internal error occurred

    - #### shutdown

          public void shutdown()
                        throws PluginException

      Description copied from interface: `ContextPlugin`
      This method is called in the very beginning of server shutdown.
      Specified by:
        `shutdown` in interface `ContextPlugin`
      Throws:
        `PluginException` - If plugin internal error occurred