org.springframework.config.java.annotation
Enum AutowireMode

java.lang.Object
  extended by java.lang.Enum<AutowireMode>
      extended by org.springframework.config.java.annotation.AutowireMode
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<AutowireMode>

public enum AutowireMode
extends java.lang.Enum<AutowireMode>

Enumeration determining autowiring mode: that is, how JavaConfig should inject dependencies, via constructor, via setter, and whether by name or by type. This enumeration is constrained to the semantics of the core Spring IoC container, which means that certain things are not possible e.g.: declaring a bean as candidate for both constructor and setter injection.

Implementation note: Spring core provides an Autowire enum, but BY_CONSTRUCTOR is not available therein. JavaConfig's AutoBean annotation requires the ability to specify whether injection should happen via setter (default) or via constructor, thus the creation of this custom enum.

Author:
Chris Beams
See Also:
Autowire, AutowireCapableBeanFactory.AUTOWIRE_*

Enum Constant Summary
BY_NAME
          Constant that indicates autowiring bean properties by name.
BY_TYPE
          Constant that indicates autowiring bean properties by type.
CONSTRUCTOR
          Constant that indicates autowiring bean properties via constructor.
 
Method Summary
 int value()
          Integer value associated with this enum label.
static AutowireMode valueOf(java.lang.String name)
          Returns the enum constant of this type with the specified name.
static AutowireMode[] 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

BY_NAME

public static final AutowireMode BY_NAME
Constant that indicates autowiring bean properties by name.


BY_TYPE

public static final AutowireMode BY_TYPE
Constant that indicates autowiring bean properties by type.


CONSTRUCTOR

public static final AutowireMode CONSTRUCTOR
Constant that indicates autowiring bean properties via constructor.

Method Detail

values

public static AutowireMode[] 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 (AutowireMode c : AutowireMode.values())
    System.out.println(c);

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

valueOf

public static AutowireMode valueOf(java.lang.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:
java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
java.lang.NullPointerException - if the argument is null

value

public int value()
Integer value associated with this enum label. Values correspond to those statically defined by AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, etc.