Class ComponentDescriptor<T>


  • public class ComponentDescriptor<T>
    extends java.lang.Object
    Component instantiation description.
    Version:
    $Id: ComponentDescriptor.java 8155 2009-04-26 01:22:53Z jvanzyl $
    Author:
    Jason van Zyl, bob mcwhirter, Michal Maczka
    • Constructor Summary

      Constructors 
      Constructor Description
      ComponentDescriptor()  
      ComponentDescriptor​(java.lang.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​(java.util.List<ComponentRequirement> requirements)
      Adds a list of requirements to this component.
      boolean equals​(java.lang.Object other)  
      java.lang.String getAlias()
      Returns an alias for this component.
      java.lang.String getComponentComposer()
      Returns the ID of the type of composer this component will use.
      java.lang.String getComponentConfigurator()
      Returns the type of component configurator for this project.
      java.lang.String getComponentFactory()
      Returns an id of the factory used to create this component.
      java.lang.String getComponentProfile()  
      ComponentSetDescriptor getComponentSetDescriptor()
      Returns the component set descriptor.
      java.lang.String getComponentType()
      Returns the type of this component.
      org.codehaus.plexus.configuration.PlexusConfiguration getConfiguration()
      Returns configuration values defined for this component.
      java.lang.String getDescription()
      Return a human-readable description of this component.
      java.lang.String getHumanReadableKey()
      Returns a human-friendly key, suitable for display.
      java.lang.String getImplementation()
      Returns the implementation of this componet.
      java.lang.Class<? extends T> getImplementationClass()
      Returns the implementation class of this componet, or null if the implementation class can not be loaded.
      java.lang.String getInstantiationStrategy()
      Returns the type of instantiation strategy for this component.
      java.lang.String getLifecycleHandler()
      Returns the lifecycle-handler for this component.
      org.codehaus.plexus.classworlds.realm.ClassRealm getRealm()
      The ClassRealm that this component lives under.
      java.util.List<ComponentRequirement> getRequirements()
      Returns all project requirements of this component.
      java.lang.String getRole()
      Returns the role of this component.
      java.lang.Class<? extends T> getRoleClass()  
      java.lang.String getRoleHint()
      Returns the role-hint of this component.
      java.lang.String getSource()
      The location this information came from (descriptor file URI).
      java.lang.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​(java.util.List<ComponentRequirement> requirements)
      Removes a list of requirements from this component.
      void setAlias​(java.lang.String alias)
      Sets the alias for this component.
      void setComponentComposer​(java.lang.String componentComposer)
      Sets a representation of the composer this component uses.
      void setComponentConfigurator​(java.lang.String componentConfigurator)
      Sets the type of component configurator for this project.
      void setComponentFactory​(java.lang.String componentFactory)
      Sets the id of the factory to use to create this component.
      void setComponentProfile​(java.lang.String componentProfile)  
      void setComponentSetDescriptor​(ComponentSetDescriptor componentSetDescriptor)
      Sets the component set descriptor of components and dependencies for this component.
      void setComponentType​(java.lang.String componentType)
      Sets this component's type.
      void setConfiguration​(org.codehaus.plexus.configuration.PlexusConfiguration configuration)
      Sets the configuration hierarchy for this component.
      void setDescription​(java.lang.String description)
      Sets a description of this component for users to read.
      void setImplementation​(java.lang.String implementation)
      Sets the implementation of this componet.
      void setImplementationClass​(java.lang.Class<? extends T> implementationClass)  
      void setInstantiationStrategy​(java.lang.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​(java.lang.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​(java.lang.String role)
      Sets the role of this component.
      void setRoleClass​(java.lang.Class<? extends T> roleClass)  
      void setRoleHint​(java.lang.String roleHint)
      Sets the role-hint of this component.
      void setSource​(java.lang.String source)
      The location this information came from (descriptor file URI).
      void setVersion​(java.lang.String version)
      Sets the point in a components's project development timeline
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • ComponentDescriptor

        public ComponentDescriptor()
      • ComponentDescriptor

        public ComponentDescriptor​(java.lang.Class<T> implementationClass,
                                   org.codehaus.plexus.classworlds.realm.ClassRealm realm)
    • Method Detail

      • setSource

        public void setSource​(java.lang.String source)
        The location this information came from (descriptor file URI).
        Parameters:
        source - Set the source.
      • getSource

        public java.lang.String getSource()
        The location this information came from (descriptor file URI).
        Returns:
        The source
      • getHumanReadableKey

        public java.lang.String getHumanReadableKey()
        Returns a human-friendly key, suitable for display.
        Returns:
        a human-friendly key
      • getAlias

        public java.lang.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​(java.lang.String alias)
        Sets the alias for this component.
        Parameters:
        alias - alternate name to set
      • getRole

        public java.lang.String getRole()
        Returns the role of this component.
        Returns:
        the role of this component
      • getRoleClass

        public java.lang.Class<? extends T> getRoleClass()
      • setRole

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

        public void setRoleClass​(java.lang.Class<? extends T> roleClass)
      • getRoleHint

        public java.lang.String getRoleHint()
        Returns the role-hint of this component.
        Returns:
        the role-hint of this component
      • setRoleHint

        public void setRoleHint​(java.lang.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 java.lang.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​(java.lang.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 java.lang.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​(java.lang.Class<? extends T> implementationClass)
      • getVersion

        public java.lang.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​(java.lang.String version)
        Sets the point in a components's project development timeline
        Parameters:
        version - the components's version
      • getComponentType

        public java.lang.String getComponentType()
        Returns the type of this component.
        Returns:
        the type of this component
      • setComponentType

        public void setComponentType​(java.lang.String componentType)
        Sets this component's type.
        Parameters:
        componentType - the type to set
      • getInstantiationStrategy

        public java.lang.String getInstantiationStrategy()
        Returns the type of instantiation strategy for this component.
        Returns:
        the type of instantiation strategy for this component
      • getConfiguration

        public org.codehaus.plexus.configuration.PlexusConfiguration getConfiguration()
        Returns configuration values defined for this component.
        Returns:
        configuration values defined for this component
      • setConfiguration

        public void setConfiguration​(org.codehaus.plexus.configuration.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 java.lang.String getLifecycleHandler()
        Returns the lifecycle-handler for this component.
        Returns:
        the lifecycle-handler for this component
      • setLifecycleHandler

        public void setLifecycleHandler​(java.lang.String lifecycleHandler)
        Sets the lifecycle-handler for this component. For example, "basic", "passive", "bootstrap".
        Parameters:
        lifecycleHandler - the lifecycle handler string to set
      • getComponentProfile

        public java.lang.String getComponentProfile()
      • setComponentProfile

        public void setComponentProfile​(java.lang.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​(java.util.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​(java.util.List<ComponentRequirement> requirements)
        Removes a list of requirements from this component.
        Parameters:
        requirements - the requirements to remove
      • getRequirements

        public java.util.List<ComponentRequirement> getRequirements()
        Returns all project requirements of this component.
        Returns:
        all project requirements of this component
      • getComponentFactory

        public java.lang.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​(java.lang.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 component factory.
      • getComponentComposer

        public java.lang.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​(java.lang.String componentComposer)
        Sets a representation of the composer this component uses.
        Parameters:
        componentComposer - string representation of the composer to use
      • getDescription

        public java.lang.String getDescription()
        Return a human-readable description of this component.
        Returns:
        a human-readable description of this component
      • setDescription

        public void setDescription​(java.lang.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​(java.lang.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 java.lang.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​(java.lang.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
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object