org.springframework.core

## Class PrioritizedParameterNameDiscoverer

- java.lang.Object
- - org.springframework.core.PrioritizedParameterNameDiscoverer

- All Implemented Interfaces:
    ParameterNameDiscoverer

      public class PrioritizedParameterNameDiscoverer
      extends Object
      implements ParameterNameDiscoverer

  ParameterNameDiscoverer implementation that tries several ParameterNameDiscoverers in succession. Those added first in the `addDiscoverer` method have highest priority. If one returns `null`, the next will be tried.

  The default behavior is always to return `null` if no discoverer matches.

  Since:
    2.0
  Author:
    Rod Johnson, Juergen Hoeller

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PrioritizedParameterNameDiscoverer()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDiscoverer(ParameterNameDiscoverer pnd)` Add a further ParameterNameDiscoverer to the list of discoverers that this PrioritizedParameterNameDiscoverer checks.
    `String[]` | `getParameterNames(Constructor ctor)` Return parameter names for this constructor, or `null` if they cannot be determined.
    `String[]` | `getParameterNames(Method method)` Return parameter names for this method, or `null` if they cannot be determined.

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

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

- - ### Constructor Detail

    - #### PrioritizedParameterNameDiscoverer

          public PrioritizedParameterNameDiscoverer()

  - ### Method Detail

    - #### addDiscoverer

          public void addDiscoverer(ParameterNameDiscoverer pnd)

      Add a further ParameterNameDiscoverer to the list of discoverers that this PrioritizedParameterNameDiscoverer checks.

    - #### getParameterNames

          public String[] getParameterNames(Method method)

      Description copied from interface: `ParameterNameDiscoverer`
      Return parameter names for this method, or `null` if they cannot be determined.
      Specified by:
        `getParameterNames` in interface `ParameterNameDiscoverer`
      Parameters:
        `method` - method to find parameter names for
      Returns:
        an array of parameter names if the names can be resolved, or `null` if they cannot

    - #### getParameterNames

          public String[] getParameterNames(Constructor ctor)

      Description copied from interface: `ParameterNameDiscoverer`
      Return parameter names for this constructor, or `null` if they cannot be determined.
      Specified by:
        `getParameterNames` in interface `ParameterNameDiscoverer`
      Parameters:
        `ctor` - constructor to find parameter names for
      Returns:
        an array of parameter names if the names can be resolved, or `null` if they cannot