View Javadoc
1   package org.codehaus.plexus.component.manager;
2   
3   import org.codehaus.plexus.MutablePlexusContainer;
4   import org.codehaus.plexus.component.repository.ComponentDescriptor;
5   import org.codehaus.plexus.lifecycle.LifecycleHandler;
6   
7   public interface ComponentManagerFactory
8   {
9       /**
10       * Gets the unique identifier of this ComponentManagerFactory.  This id is the instantiation strategy specified
11       * in a component descriptor.
12       * @return the unique identifier and instantiation strategy name
13       */
14      String getId();
15  
16      /**
17       * Creates a new component manager for the specified component descriptor.
18       */
19      <T> ComponentManager<T> createComponentManager( MutablePlexusContainer container,
20                                               LifecycleHandler lifecycleHandler,
21                                               ComponentDescriptor<T> componentDescriptor,
22                                               String role,
23                                               String roleHint );
24  }