Package org.apache.tapestry5.commons.util

# Class StringToEnumCoercion<T extends Enum>

java.lang.Object
org.apache.tapestry5.commons.util.StringToEnumCoercion<T>

Type Parameters:
  `T` - the type of enumeration

All Implemented Interfaces:
  `Coercion<String,T>`

public final class StringToEnumCoercion<T extends Enum> extends Object implements Coercion<String,T>
A `Coercion` for converting strings into an instance of a particular enumerated type. The `name` is used as the key to identify the enum instance, in a case-insensitive fashion. Moved from tapestry-core to tapestry-ioc in release 5.3, but kept in same package for compatibility. Moved tapestry-ioc to commons in release 5.4, but kept in same package for compatibility.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StringToEnumCoercion(Class<T> enumClass)`
  `StringToEnumCoercion(Class<T> enumClass, T... values)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `StringToEnumCoercion<T>`
  `addAlias(String alias, T value)`
  Allows an alias value (alternate) string to reference a value.
  `T`
  `coerce(String input)`
  Converts an input value.
  `static <T extends Enum>
  StringToEnumCoercion<T>`
  `create(Class<T> enumClass)`

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

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

- ## Constructor Details

  - ### StringToEnumCoercion

    public StringToEnumCoercion(Class<T> enumClass)

  - ### StringToEnumCoercion

    public StringToEnumCoercion(Class<T> enumClass, T... values)

- ## Method Details

  - ### coerce

    public T coerce(String input)
    Description copied from interface: `Coercion`
    Converts an input value.
    Specified by:
      `coerce` in interface `Coercion<String,T extends Enum>`
    Parameters:
      `input` - the input value

  - ### addAlias

    public StringToEnumCoercion<T> addAlias(String alias, T value)
    Allows an alias value (alternate) string to reference a value.
    Since:
      5.2.2

  - ### create

    public static <T extends Enum> StringToEnumCoercion<T> create(Class<T> enumClass)