Package org.apache.cxf.bus.extension

## Class ExtensionManagerBus

- java.lang.Object
- - org.apache.cxf.interceptor.AbstractBasicInterceptorProvider
  - - org.apache.cxf.bus.extension.ExtensionManagerBus

- All Implemented Interfaces:
    `Bus`, `InterceptorProvider`
  Direct Known Subclasses:
    `BlueprintBus`, `SpringBus`

      public class ExtensionManagerBus
      extends AbstractBasicInterceptorProvider
      implements Bus

  This bus uses CXF's built in extension manager to load components (as opposed to using the Spring bus implementation). While this is faster to load it doesn't allow extensive configuration and customization like the Spring bus does.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `ExtensionManagerBus.ExtensionFinder` |

    - ### Nested classes/interfaces inherited from interface org.apache.cxf.Bus

      `Bus.BusState`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `BUS_PROPERTY_NAME` |
    `protected Map<Class<?>,​Object>` | `extensions` |
    `protected String` | `id` |
    `protected Set<Class<?>>` | `missingExtensions` |

    - ### Fields inherited from interface org.apache.cxf.Bus

      `DEFAULT_BUS_ID`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ExtensionManagerBus()` |
    `ExtensionManagerBus​(Map<Class<?>,​Object> e)` |
    `ExtensionManagerBus​(Map<Class<?>,​Object> e, Map<String,​Object> properties)` |
    `ExtensionManagerBus​(Map<Class<?>,​Object> extensions, Map<String,​Object> props, ClassLoader extensionClassLoader)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected ConfiguredBeanLocator` | `createConfiguredBeanLocator()` |
    `protected void` | `destroyBeans()` |
    `protected void` | `doInitializeInternal()` |
    `<T> T` | `getExtension​(Class<T> extensionType)` |
    `Collection<Feature>` | `getFeatures()` |
    `String` | `getId()` |
    `Map<String,​Object>` | `getProperties()` |
    `Object` | `getProperty​(String s)` |
    `Bus.BusState` | `getState()` |
    `boolean` | `hasExtensionByName​(String name)` |
    `void` | `initialize()` |
    `protected void` | `initializeFeatures()` |
    `protected void` | `loadAdditionalFeatures()` |
    `<T> void` | `setExtension​(T extension, Class<T> extensionType)` |
    `void` | `setFeatures​(Collection<? extends Feature> features)` |
    `void` | `setId​(String i)` |
    `void` | `setProperties​(Map<String,​Object> map)` |
    `void` | `setProperty​(String s, Object o)` |
    `protected void` | `setState​(Bus.BusState state)` |
    `void` | `shutdown()` |
    `void` | `shutdown​(boolean wait)` |

    - ### Methods inherited from class org.apache.cxf.interceptor.AbstractBasicInterceptorProvider

      `getInFaultInterceptors, getInInterceptors, getOutFaultInterceptors, getOutInterceptors, setInFaultInterceptors, setInInterceptors, setOutFaultInterceptors, setOutInterceptors`

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

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

    - ### Methods inherited from interface org.apache.cxf.interceptor.InterceptorProvider

      `getInFaultInterceptors, getInInterceptors, getOutFaultInterceptors, getOutInterceptors`

- - ### Field Detail

    - #### BUS_PROPERTY_NAME

          public static final String BUS_PROPERTY_NAME

      See Also:
        Constant Field Values

    - #### extensions

          protected final Map<Class<?>,​Object> extensions

    - #### missingExtensions

          protected final Set<Class<?>> missingExtensions

    - #### id

          protected String id

  - ### Constructor Detail

    - #### ExtensionManagerBus

          public ExtensionManagerBus​(Map<Class<?>,​Object> extensions,
                                     Map<String,​Object> props,
                                     ClassLoader extensionClassLoader)

    - #### ExtensionManagerBus

          public ExtensionManagerBus​(Map<Class<?>,​Object> e,
                                     Map<String,​Object> properties)

    - #### ExtensionManagerBus

          public ExtensionManagerBus​(Map<Class<?>,​Object> e)

    - #### ExtensionManagerBus

          public ExtensionManagerBus()

  - ### Method Detail

    - #### setState

          protected final void setState​(Bus.BusState state)

    - #### setId

          public void setId​(String i)

      Specified by:
        `setId` in interface `Bus`

    - #### getExtension

          public final <T> T getExtension​(Class<T> extensionType)

      Specified by:
        `getExtension` in interface `Bus`

    - #### hasExtensionByName

          public boolean hasExtensionByName​(String name)

      Specified by:
        `hasExtensionByName` in interface `Bus`

    - #### createConfiguredBeanLocator

          protected final ConfiguredBeanLocator createConfiguredBeanLocator()

    - #### setExtension

          public final <T> void setExtension​(T extension,
                                             Class<T> extensionType)

      Specified by:
        `setExtension` in interface `Bus`

    - #### getId

          public String getId()

      Specified by:
        `getId` in interface `Bus`

    - #### initialize

          public void initialize()

    - #### doInitializeInternal

          protected void doInitializeInternal()

    - #### loadAdditionalFeatures

          protected void loadAdditionalFeatures()

    - #### initializeFeatures

          protected void initializeFeatures()

    - #### shutdown

          public void shutdown()

    - #### destroyBeans

          protected void destroyBeans()

    - #### shutdown

          public void shutdown​(boolean wait)

      Specified by:
        `shutdown` in interface `Bus`

    - #### getState

          public Bus.BusState getState()

      Specified by:
        `getState` in interface `Bus`

    - #### getFeatures

          public Collection<Feature> getFeatures()

      Specified by:
        `getFeatures` in interface `Bus`

    - #### setFeatures

          public void setFeatures​(Collection<? extends Feature> features)

      Specified by:
        `setFeatures` in interface `Bus`

    - #### getProperties

          public Map<String,​Object> getProperties()

      Specified by:
        `getProperties` in interface `Bus`

    - #### setProperties

          public void setProperties​(Map<String,​Object> map)

      Specified by:
        `setProperties` in interface `Bus`

    - #### getProperty

          public Object getProperty​(String s)

      Specified by:
        `getProperty` in interface `Bus`

    - #### setProperty

          public void setProperty​(String s,
                                  Object o)

      Specified by:
        `setProperty` in interface `Bus`