org.xwiki.component.embed
Class EmbeddableComponentManager

java.lang.Object
  extended by org.xwiki.component.embed.EmbeddableComponentManager
All Implemented Interfaces:
ComponentManager

public class EmbeddableComponentManager
extends java.lang.Object
implements ComponentManager

Simple implementation of ComponentManager to be used when using some XWiki modules standalone.

Since:
2.0M1
Version:
$Id$

Constructor Summary
EmbeddableComponentManager()
           
 
Method Summary
<T> ComponentDescriptor<T>
getComponentDescriptor(java.lang.Class<T> role, java.lang.String roleHint)
          
<T> java.util.List<ComponentDescriptor<T>>
getComponentDescriptorList(java.lang.Class<T> role)
          
 ComponentEventManager getComponentEventManager()
          
 ComponentManager getParent()
          
<T> boolean
hasComponent(java.lang.Class<T> role)
          
<T> boolean
hasComponent(java.lang.Class<T> role, java.lang.String roleHint)
          
 void initialize(java.lang.ClassLoader classLoader)
          Load all component annotations and register them as components.
<T> T
lookup(java.lang.Class<T> role)
          
<T> T
lookup(java.lang.Class<T> role, java.lang.String roleHint)
          
<T> java.util.List<T>
lookupList(java.lang.Class<T> role)
          
<T> java.util.Map<java.lang.String,T>
lookupMap(java.lang.Class<T> role)
          
<T> void
registerComponent(ComponentDescriptor<T> componentDescriptor)
          
<T> void
registerComponent(ComponentDescriptor<T> componentDescriptor, T componentInstance)
          
<T> void
release(T component)
          
 void setComponentEventManager(ComponentEventManager eventManager)
          
 void setParent(ComponentManager parentComponentManager)
          
 void unregisterComponent(java.lang.Class<?> role, java.lang.String roleHint)
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EmbeddableComponentManager

public EmbeddableComponentManager()
Method Detail

initialize

public void initialize(java.lang.ClassLoader classLoader)
Load all component annotations and register them as components.

Parameters:
classLoader - the class loader to use to look for component definitions

hasComponent

public <T> boolean hasComponent(java.lang.Class<T> role,
                                java.lang.String roleHint)

Specified by:
hasComponent in interface ComponentManager
See Also:
ComponentManager.hasComponent(Class, String)

hasComponent

public <T> boolean hasComponent(java.lang.Class<T> role)

Specified by:
hasComponent in interface ComponentManager
See Also:
ComponentManager.hasComponent(Class)

lookup

public <T> T lookup(java.lang.Class<T> role)
         throws ComponentLookupException

Specified by:
lookup in interface ComponentManager
Throws:
ComponentLookupException
See Also:
ComponentManager.lookup(Class)

lookup

public <T> T lookup(java.lang.Class<T> role,
                    java.lang.String roleHint)
         throws ComponentLookupException

Specified by:
lookup in interface ComponentManager
Throws:
ComponentLookupException
See Also:
ComponentManager.lookup(Class, String)

lookupList

public <T> java.util.List<T> lookupList(java.lang.Class<T> role)
                             throws ComponentLookupException

Specified by:
lookupList in interface ComponentManager
Throws:
ComponentLookupException
See Also:
ComponentManager.lookupList(Class)

lookupMap

public <T> java.util.Map<java.lang.String,T> lookupMap(java.lang.Class<T> role)
                                            throws ComponentLookupException

Specified by:
lookupMap in interface ComponentManager
Throws:
ComponentLookupException
See Also:
ComponentManager.lookupMap(Class)

registerComponent

public <T> void registerComponent(ComponentDescriptor<T> componentDescriptor)
                       throws ComponentRepositoryException

Specified by:
registerComponent in interface ComponentManager
Throws:
ComponentRepositoryException
See Also:
ComponentManager.registerComponent(ComponentDescriptor)

registerComponent

public <T> void registerComponent(ComponentDescriptor<T> componentDescriptor,
                                  T componentInstance)

Specified by:
registerComponent in interface ComponentManager
See Also:
ComponentManager.registerComponent(ComponentDescriptor, java.lang.Object)

unregisterComponent

public void unregisterComponent(java.lang.Class<?> role,
                                java.lang.String roleHint)

Specified by:
unregisterComponent in interface ComponentManager
See Also:
ComponentManager.unregisterComponent(java.lang.Class, java.lang.String)

getComponentDescriptor

public <T> ComponentDescriptor<T> getComponentDescriptor(java.lang.Class<T> role,
                                                         java.lang.String roleHint)

Specified by:
getComponentDescriptor in interface ComponentManager
See Also:
ComponentManager.getComponentDescriptor(Class, String)

getComponentDescriptorList

public <T> java.util.List<ComponentDescriptor<T>> getComponentDescriptorList(java.lang.Class<T> role)

Specified by:
getComponentDescriptorList in interface ComponentManager
See Also:
ComponentManager.getComponentDescriptorList(Class)

release

public <T> void release(T component)
             throws ComponentLifecycleException

Specified by:
release in interface ComponentManager
Throws:
ComponentLifecycleException
See Also:
ComponentManager.release(Object)

getComponentEventManager

public ComponentEventManager getComponentEventManager()

Specified by:
getComponentEventManager in interface ComponentManager
See Also:
ComponentManager.getComponentEventManager()

setComponentEventManager

public void setComponentEventManager(ComponentEventManager eventManager)

Specified by:
setComponentEventManager in interface ComponentManager
See Also:
ComponentManager.setComponentEventManager(ComponentEventManager)

getParent

public ComponentManager getParent()

Specified by:
getParent in interface ComponentManager
See Also:
ComponentManager.getParent()

setParent

public void setParent(ComponentManager parentComponentManager)

Specified by:
setParent in interface ComponentManager
See Also:
ComponentManager.setParent(ComponentManager)


Copyright © 2004-2011 XWiki. All Rights Reserved.