# Class StringOption

java.lang.Object
com.thaiopensource.validate.StringOption

All Implemented Interfaces:
  `Option`

public class StringOption extends Object implements Option

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StringOption(StringPropertyId pid)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `combine(Object[] values)`
  Combines multiple values of an option into a single value.
  `String`
  `defaultValue()`
  `StringPropertyId`
  `getPropertyId()`
  `String`
  `normalize(String value)`
  `String`
  `valueOf(String arg)`

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

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

- ## Constructor Details

  - ### StringOption

    public StringOption(StringPropertyId pid)

- ## Method Details

  - ### getPropertyId

    public StringPropertyId getPropertyId()
    Specified by:
      `getPropertyId` in interface `Option`

  - ### valueOf

    public String valueOf(String arg) throws OptionArgumentException
    Specified by:
      `valueOf` in interface `Option`
    Throws:
      `OptionArgumentException`

  - ### defaultValue

    public String defaultValue() throws OptionArgumentPresenceException
    Throws:
      `OptionArgumentPresenceException`

  - ### normalize

    public String normalize(String value) throws OptionArgumentFormatException
    Throws:
      `OptionArgumentFormatException`

  - ### combine

    public Object combine(Object[] values)
    Description copied from interface: `Option`
    Combines multiple values of an option into a single value. A property whose value is logically a sequence may be represented by multiple options each representing a single member of the sequence.
    Specified by:
      `combine` in interface `Option`
    Parameters:
      `values` - an array of values to be combined
    Returns:
      an Object representing the combination, or `null` if they cannot be combined