# Annotation Type OptionValues

@Retention(RUNTIME) @Target(METHOD) @Inherited public @interface OptionValues

Marks a method on a `Task` as providing the possible values for a `String` or `List<String>` `Option`. At most one option values method may be provided for a particular option.

This annotation should be attached to a getter method that returns a `Collection` of possible values. The entries in the collection may be of any type. If necessary, they are transformed into `Strings` by calling `toString()`.

Since:
  4.6

- ## Required Element Summary

  Required Elements
  Modifier and Type
  Required Element
  Description
  `String[]`
  `value`
  The names of the options for which the method provides the possible values.

- ## Element Details

  - ### value

    String[] value
    The names of the options for which the method provides the possible values.
    Returns:
      the option names
    Since:
      4.6