Class ComponentDescriptor<T>
- java.lang.Object
-
- org.codehaus.plexus.component.repository.ComponentDescriptor<T>
-
public class ComponentDescriptor<T> extends Object
Component instantiation description.- Author:
- Jason van Zyl, bob mcwhirter, Michal Maczka
-
-
Constructor Summary
Constructors Constructor Description ComponentDescriptor()
ComponentDescriptor(Class<T> implementationClass, org.codehaus.plexus.classworlds.realm.ClassRealm realm)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addRequirement(ComponentRequirement requirement)
Add a project requirement to this component.void
addRequirement(ComponentRequirement... requirement)
Add a project requirement to this component.void
addRequirements(List<ComponentRequirement> requirements)
Adds a list of requirements to this component.boolean
equals(Object other)
String
getAlias()
Returns an alias for this component.String
getComponentComposer()
Returns the ID of the type of composer this component will use.String
getComponentConfigurator()
Returns the type of component configurator for this project.String
getComponentFactory()
Returns an id of the factory used to create this component.String
getComponentProfile()
ComponentSetDescriptor
getComponentSetDescriptor()
Returns the component set descriptor.String
getComponentType()
Returns the type of this component.PlexusConfiguration
getConfiguration()
Returns configuration values defined for this component.String
getDescription()
Return a human-readable description of this component.String
getHumanReadableKey()
Returns a human-friendly key, suitable for display.String
getImplementation()
Returns the implementation of this componet.Class<? extends T>
getImplementationClass()
Returns the implementation class of this componet, or null if the implementation class can not be loaded.String
getInstantiationStrategy()
Returns the type of instantiation strategy for this component.String
getLifecycleHandler()
Returns the lifecycle-handler for this component.org.codehaus.plexus.classworlds.realm.ClassRealm
getRealm()
The ClassRealm that this component lives under.List<ComponentRequirement>
getRequirements()
Returns all project requirements of this component.String
getRole()
Returns the role of this component.Class<T>
getRoleClass()
String
getRoleHint()
Returns the role-hint of this component.String
getSource()
The location this information came from (descriptor file URI).String
getVersion()
Returns a specific point in a components's project timeline.boolean
hasConfiguration()
Returns true if this component has a configuration.int
hashCode()
boolean
isIsolatedRealm()
Returns true if this may be in an isolated classrealm.void
removeRequirement(ComponentRequirement... requirement)
Remove a project requirement from this component.void
removeRequirements(List<ComponentRequirement> requirements)
Removes a list of requirements from this component.void
setAlias(String alias)
Sets the alias for this component.void
setComponentComposer(String componentComposer)
Sets a representation of the composer this component uses.void
setComponentConfigurator(String componentConfigurator)
Sets the type of component configurator for this project.void
setComponentFactory(String componentFactory)
Sets the id of the factory to use to create this component.void
setComponentProfile(String componentProfile)
void
setComponentSetDescriptor(ComponentSetDescriptor componentSetDescriptor)
Sets the component set descriptor of components and dependencies for this component.void
setComponentType(String componentType)
Sets this component's type.void
setConfiguration(PlexusConfiguration configuration)
Sets the configuration hierarchy for this component.void
setDescription(String description)
Sets a description of this component for users to read.void
setImplementation(String implementation)
Sets the implementation of this componet.void
setImplementationClass(Class<? extends T> implementationClass)
void
setInstantiationStrategy(String instantiationStrategy)
Sets the instantiation-strategy for this component.void
setIsolatedRealm(boolean isolatedRealm)
Sets that this component may be in an isolated classrealm.void
setLifecycleHandler(String lifecycleHandler)
Sets the lifecycle-handler for this component.void
setRealm(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
Set the ClassRealm that this component lives under.void
setRole(String role)
Sets the role of this component.void
setRoleClass(Class<T> roleClass)
void
setRoleHint(String roleHint)
Sets the role-hint of this component.void
setSource(String source)
The location this information came from (descriptor file URI).void
setVersion(String version)
Sets the point in a components's project development timelineString
toString()
-
-
-
Method Detail
-
setSource
public void setSource(String source)
The location this information came from (descriptor file URI).- Parameters:
source
- The source of the descriptor.
-
getSource
public String getSource()
The location this information came from (descriptor file URI).- Returns:
- The source.
-
getHumanReadableKey
public String getHumanReadableKey()
Returns a human-friendly key, suitable for display.- Returns:
- a human-friendly key
-
getAlias
public String getAlias()
Returns an alias for this component. An alias as an alternate name other than the normal key.- Returns:
- an alias for this component
-
setAlias
public void setAlias(String alias)
Sets the alias for this component.- Parameters:
alias
- alternate name to set
-
getRole
public String getRole()
Returns the role of this component.- Returns:
- the role of this component
-
setRole
public void setRole(String role)
Sets the role of this component.- Parameters:
role
- this component's role
-
getRoleHint
public String getRoleHint()
Returns the role-hint of this component.- Returns:
- the role-hint of this component
-
setRoleHint
public void setRoleHint(String roleHint)
Sets the role-hint of this component. Pasing null will set the hint to the default value.- Parameters:
roleHint
- this component's role-hint
-
getImplementation
public String getImplementation()
Returns the implementation of this componet. Implementation is a string denoting a FQCN in normal Java components, or some other name or file for other component factory implementations.- Returns:
- the implementation of this componet's role.
-
setImplementation
public void setImplementation(String implementation)
Sets the implementation of this componet.- Parameters:
implementation
- string denoting a FQCN in normal Java components, or some other name or file for other component factory implementations
-
getImplementationClass
public Class<? extends T> getImplementationClass()
Returns the implementation class of this componet, or null if the implementation class can not be loaded.- Returns:
- the implementation of this componet's role.
-
getVersion
public String getVersion()
Returns a specific point in a components's project timeline. i.e. version 1, or 2.1.4- Returns:
- a specific point in a components's project timeline
-
setVersion
public void setVersion(String version)
Sets the point in a components's project development timeline- Parameters:
version
- the components's version
-
getComponentType
public String getComponentType()
Returns the type of this component.- Returns:
- the type of this component
-
setComponentType
public void setComponentType(String componentType)
Sets this component's type.- Parameters:
componentType
- the type to set
-
getInstantiationStrategy
public String getInstantiationStrategy()
Returns the type of instantiation strategy for this component.- Returns:
- the type of instantiation strategy for this component
-
getConfiguration
public PlexusConfiguration getConfiguration()
Returns configuration values defined for this component.- Returns:
- configuration values defined for this component
-
setConfiguration
public void setConfiguration(PlexusConfiguration configuration)
Sets the configuration hierarchy for this component.- Parameters:
configuration
- the configuration hierarchy to set
-
hasConfiguration
public boolean hasConfiguration()
Returns true if this component has a configuration.- Returns:
- true if this component has a configuration
-
getLifecycleHandler
public String getLifecycleHandler()
Returns the lifecycle-handler for this component.- Returns:
- the lifecycle-handler for this component
-
setLifecycleHandler
public void setLifecycleHandler(String lifecycleHandler)
Sets the lifecycle-handler for this component. For example, "basic", "passive", "bootstrap".- Parameters:
lifecycleHandler
- the lifecycle handler string to set
-
getComponentProfile
public String getComponentProfile()
-
setComponentProfile
public void setComponentProfile(String componentProfile)
-
addRequirement
public void addRequirement(ComponentRequirement requirement)
Add a project requirement to this component.- Parameters:
requirement
- the requirement to add
-
addRequirement
public void addRequirement(ComponentRequirement... requirement)
Add a project requirement to this component.- Parameters:
requirement
- the requirement to add
-
addRequirements
public void addRequirements(List<ComponentRequirement> requirements)
Adds a list of requirements to this component.- Parameters:
requirements
- the requirements to add
-
removeRequirement
public void removeRequirement(ComponentRequirement... requirement)
Remove a project requirement from this component.- Parameters:
requirement
- the requirement to remove
-
removeRequirements
public void removeRequirements(List<ComponentRequirement> requirements)
Removes a list of requirements from this component.- Parameters:
requirements
- the requirements to remove
-
getRequirements
public List<ComponentRequirement> getRequirements()
Returns all project requirements of this component.- Returns:
- all project requirements of this component
-
getComponentFactory
public String getComponentFactory()
Returns an id of the factory used to create this component.- Returns:
- an id of the factory used to create this component
-
setComponentFactory
public void setComponentFactory(String componentFactory)
Sets the id of the factory to use to create this component. For example, "jruby" will use a JRuby factory.- Parameters:
componentFactory
- The componentFactor.
-
getComponentComposer
public String getComponentComposer()
Returns the ID of the type of composer this component will use. For example, "setter" or "field" for the different types of dependency injection.- Returns:
- the ID of the type of composer this component will use
-
setComponentComposer
public void setComponentComposer(String componentComposer)
Sets a representation of the composer this component uses.- Parameters:
componentComposer
- string representation of the composer to use
-
getDescription
public String getDescription()
Return a human-readable description of this component.- Returns:
- a human-readable description of this component
-
setDescription
public void setDescription(String description)
Sets a description of this component for users to read.- Parameters:
description
- a human-readable description of this component
-
setInstantiationStrategy
public void setInstantiationStrategy(String instantiationStrategy)
Sets the instantiation-strategy for this component. For example, "container".- Parameters:
instantiationStrategy
- The strategy.
-
isIsolatedRealm
public boolean isIsolatedRealm()
Returns true if this may be in an isolated classrealm.- Returns:
- true if this may be in an isolated classrealm
-
setComponentSetDescriptor
public void setComponentSetDescriptor(ComponentSetDescriptor componentSetDescriptor)
Sets the component set descriptor of components and dependencies for this component.- Parameters:
componentSetDescriptor
- the component set descriptor of components and dependencies
-
getComponentSetDescriptor
public ComponentSetDescriptor getComponentSetDescriptor()
Returns the component set descriptor.- Returns:
- the component set descriptor
-
setIsolatedRealm
public void setIsolatedRealm(boolean isolatedRealm)
Sets that this component may be in an isolated classrealm.- Parameters:
isolatedRealm
- true if this component may be in an isolated classrealm
-
getComponentConfigurator
public String getComponentConfigurator()
Returns the type of component configurator for this project. For example "basic" for normal, or "map-oriented" for map oriented components.- Returns:
- the type of component configurator for this project
-
setComponentConfigurator
public void setComponentConfigurator(String componentConfigurator)
Sets the type of component configurator for this project.- Parameters:
componentConfigurator
- The component configurator.
-
getRealm
public org.codehaus.plexus.classworlds.realm.ClassRealm getRealm()
The ClassRealm that this component lives under.- Returns:
- ClassRealm that this component lives under
-
setRealm
public void setRealm(org.codehaus.plexus.classworlds.realm.ClassRealm realm)
Set the ClassRealm that this component lives under.- Parameters:
realm
- the ClassRealm that this component lives under
-
-