org.codehaus.plexus.component.repository

Interface ComponentRepository

Known Implementing Classes:
DefaultComponentRepository

public interface ComponentRepository

Like the avalon component manager. Central point to get the components from. TODO: Enhance the ComponentRepository so that it can take entire ComponentSetDescriptors instead of just ComponentDescriptors.

Method Summary

void
addComponentDescriptor(ComponentDescriptor componentDescriptor)
void
addComponentDescriptor(PlexusConfiguration configuration)
void
configure(PlexusConfiguration configuration)
List
getComponentDependencies(ComponentDescriptor componentDescriptor)
ComponentDescriptor
getComponentDescriptor(String role)
Map
getComponentDescriptorMap(String role)
boolean
hasComponent(String role)
boolean
hasComponent(String role, String id)
void
initialize()
void
setClassRealm(ClassRealm classRealm)
void
validateComponentDescriptor(ComponentDescriptor componentDescriptor)

Method Details

addComponentDescriptor

public void addComponentDescriptor(ComponentDescriptor componentDescriptor)
            throws ComponentRepositoryException

addComponentDescriptor

public void addComponentDescriptor(PlexusConfiguration configuration)
            throws ComponentRepositoryException

configure

public void configure(PlexusConfiguration configuration)

getComponentDependencies

public List getComponentDependencies(ComponentDescriptor componentDescriptor)

getComponentDescriptor

public ComponentDescriptor getComponentDescriptor(String role)

getComponentDescriptorMap

public Map getComponentDescriptorMap(String role)

hasComponent

public boolean hasComponent(String role)

hasComponent

public boolean hasComponent(String role,
                            String id)

initialize

public void initialize()
            throws ComponentRepositoryException

setClassRealm

public void setClassRealm(ClassRealm classRealm)

validateComponentDescriptor

public void validateComponentDescriptor(ComponentDescriptor componentDescriptor)
            throws ComponentImplementationNotFoundException