org.springframework.beans.factory.annotation

## Enum Autowire

- java.lang.Object
- - java.lang.Enum<Autowire>
  - - org.springframework.beans.factory.annotation.Autowire

- All Implemented Interfaces:
    Serializable, Comparable<Autowire>

      public enum Autowire
      extends Enum<Autowire>

  Enumeration determining autowiring status: that is, whether a bean should have its dependencies automatically injected by the Spring container using setter injection. This is a core concept in Spring DI.

  Available for use in annotation-based configurations, such as for the AspectJ AnnotationBeanConfigurer aspect.

  Since:
    2.0
  Author:
    Rod Johnson, Juergen Hoeller
  See Also:
    `Configurable`, `AutowireCapableBeanFactory`

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `BY_NAME` Constant that indicates autowiring bean properties by name.
    `BY_TYPE` Constant that indicates autowiring bean properties by type.
    `NO` Constant that indicates no autowiring at all.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isAutowire()` Return whether this represents an actual autowiring value.
    `int` | `value()`
    `static Autowire` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static Autowire[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

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

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### NO

          public static final Autowire NO

      Constant that indicates no autowiring at all.

    - #### BY_NAME

          public static final Autowire BY_NAME

      Constant that indicates autowiring bean properties by name.

    - #### BY_TYPE

          public static final Autowire BY_TYPE

      Constant that indicates autowiring bean properties by type.

  - ### Method Detail

    - #### values

          public static Autowire[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (Autowire c : Autowire.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static Autowire valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

    - #### value

          public int value()

    - #### isAutowire

          public boolean isAutowire()

      Return whether this represents an actual autowiring value.
      Returns:
        whether actual autowiring was specified (either BY_NAME or BY_TYPE)