org.springframework.context.annotation

## Class ComponentScanBeanDefinitionParser

- java.lang.Object
- - org.springframework.context.annotation.ComponentScanBeanDefinitionParser

- All Implemented Interfaces:
    BeanDefinitionParser

      public class ComponentScanBeanDefinitionParser
      extends Object
      implements BeanDefinitionParser

  Parser for the `<context:component-scan/>` element.
  Since:
    2.5
  Author:
    Mark Fisher, Ramnivas Laddad, Juergen Hoeller

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ComponentScanBeanDefinitionParser()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected ClassPathBeanDefinitionScanner` | `configureScanner(ParserContext parserContext, Element element)`
    `protected ClassPathBeanDefinitionScanner` | `createScanner(XmlReaderContext readerContext, boolean useDefaultFilters)`
    `protected TypeFilter` | `createTypeFilter(Element element, ClassLoader classLoader)`
    `BeanDefinition` | `parse(Element element, ParserContext parserContext)` Parse the specified `Element` and register the resulting `BeanDefinition(s)` with the `BeanDefinitionRegistry` embedded in the supplied `ParserContext`.
    `protected void` | `parseBeanNameGenerator(Element element, ClassPathBeanDefinitionScanner scanner)`
    `protected void` | `parseScope(Element element, ClassPathBeanDefinitionScanner scanner)`
    `protected void` | `parseTypeFilters(Element element, ClassPathBeanDefinitionScanner scanner, XmlReaderContext readerContext, ParserContext parserContext)`
    `protected void` | `registerComponents(XmlReaderContext readerContext, Set<BeanDefinitionHolder> beanDefinitions, Element element)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ComponentScanBeanDefinitionParser

          public ComponentScanBeanDefinitionParser()

  - ### Method Detail

    - #### parse

          public BeanDefinition parse(Element element,
                                      ParserContext parserContext)

      Description copied from interface: `BeanDefinitionParser`
      Parse the specified `Element` and register the resulting `BeanDefinition(s)` with the `BeanDefinitionRegistry` embedded in the supplied `ParserContext`.

      Implementations must return the primary `BeanDefinition` that results from the parse if they will ever be used in a nested fashion (for example as an inner tag in a `<property/>` tag). Implementations may return `null` if they will not be used in a nested fashion.

      Specified by:
        `parse` in interface `BeanDefinitionParser`
      Parameters:
        `element` - the element that is to be parsed into one or more `BeanDefinitions`
        `parserContext` - the object encapsulating the current state of the parsing process; provides access to a `BeanDefinitionRegistry`
      Returns:
        the primary `BeanDefinition`

    - #### configureScanner

          protected ClassPathBeanDefinitionScanner configureScanner(ParserContext parserContext,
                                                                    Element element)

    - #### createScanner

          protected ClassPathBeanDefinitionScanner createScanner(XmlReaderContext readerContext,
                                                                 boolean useDefaultFilters)

    - #### registerComponents

          protected void registerComponents(XmlReaderContext readerContext,
                                            Set<BeanDefinitionHolder> beanDefinitions,
                                            Element element)

    - #### parseBeanNameGenerator

          protected void parseBeanNameGenerator(Element element,
                                                ClassPathBeanDefinitionScanner scanner)

    - #### parseScope

          protected void parseScope(Element element,
                                    ClassPathBeanDefinitionScanner scanner)

    - #### parseTypeFilters

          protected void parseTypeFilters(Element element,
                                          ClassPathBeanDefinitionScanner scanner,
                                          XmlReaderContext readerContext,
                                          ParserContext parserContext)

    - #### createTypeFilter

          protected TypeFilter createTypeFilter(Element element,
                                                ClassLoader classLoader)