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 Details

    • ComponentDescriptor

      public ComponentDescriptor()
    • ComponentDescriptor

      public ComponentDescriptor(Class<T> implementationClass, org.codehaus.plexus.classworlds.realm.ClassRealm realm)
  • Method Details

    • 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
    • getRoleClass

      public Class<T> getRoleClass()
    • setRole

      public void setRole(String role)
      Sets the role of this component.
      Parameters:
      role - this component's role
    • setRoleClass

      public void setRoleClass(Class<T> roleClass)
    • 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.
    • setImplementationClass

      public void setImplementationClass(Class<? extends T> implementationClass)
    • 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
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object