org.codehaus.plexus.component.manager.ComponentManagerFactory Maven / Gradle / Ivy
package org.codehaus.plexus.component.manager;
import org.codehaus.plexus.MutablePlexusContainer;
import org.codehaus.plexus.component.repository.ComponentDescriptor;
import org.codehaus.plexus.lifecycle.LifecycleHandler;
public interface ComponentManagerFactory
{
/**
* Gets the unique identifier of this ComponentManagerFactory. This id is the instantiation strategy specified
* in a component descriptor.
* @return the unique identifier and instantiation strategy name
*/
String getId();
/**
* Creates a new component manager for the specified component descriptor.
*/
ComponentManager createComponentManager( MutablePlexusContainer container,
LifecycleHandler lifecycleHandler,
ComponentDescriptor componentDescriptor,
String role,
String roleHint );
}