## org.springframework.beans.propertyeditors
Class CustomBooleanEditor

    java.lang.Object
      java.beans.PropertyEditorSupport
          org.springframework.beans.propertyeditors.CustomBooleanEditor

All Implemented Interfaces:
  PropertyEditor

    public class CustomBooleanEditor

extends PropertyEditorSupport

Property editor for Boolean/boolean properties.

This is not meant to be used as system PropertyEditor but rather as locale-specific Boolean editor within custom controller code, to parse UI-caused boolean strings into boolean properties of beans and check them in the UI form.

In web MVC code, this editor will typically be registered with `binder.registerCustomEditor` calls in an implementation of BaseCommandController's `initBinder` method.

Since:
  10.06.2003
Author:
  Juergen Hoeller
See Also:
  `DataBinder.registerCustomEditor(java.lang.Class<?>, java.beans.PropertyEditor)`, `BaseCommandController.initBinder(javax.servlet.http.HttpServletRequest, org.springframework.web.bind.ServletRequestDataBinder)`

Field Summary
`static String` `VALUE_0`
`static String` `VALUE_1`
`static String` `VALUE_FALSE`
`static String` `VALUE_NO`
`static String` `VALUE_OFF`
`static String` `VALUE_ON`
`static String` `VALUE_TRUE`
`static String` `VALUE_YES`

Constructor Summary
`CustomBooleanEditor(boolean allowEmpty)` Create a new CustomBooleanEditor instance, with "true"/"on"/"yes" and "false"/"off"/"no" as recognized String values.
`CustomBooleanEditor(String trueString, String falseString, boolean allowEmpty)` Create a new CustomBooleanEditor instance, with configurable String values for true and false.

Method Summary
`String` `getAsText()`
`void` `setAsText(String text)`

Methods inherited from class java.beans.PropertyEditorSupport
`addPropertyChangeListener, firePropertyChange, getCustomEditor, getJavaInitializationString, getSource, getTags, getValue, isPaintable, paintValue, removePropertyChangeListener, setSource, setValue, supportsCustomEditor`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### VALUE_TRUE

    public static final String VALUE_TRUE

See Also:
  Constant Field Values

### VALUE_FALSE

    public static final String VALUE_FALSE

See Also:
  Constant Field Values

### VALUE_ON

    public static final String VALUE_ON

See Also:
  Constant Field Values

### VALUE_OFF

    public static final String VALUE_OFF

See Also:
  Constant Field Values

### VALUE_YES

    public static final String VALUE_YES

See Also:
  Constant Field Values

### VALUE_NO

    public static final String VALUE_NO

See Also:
  Constant Field Values

### VALUE_1

    public static final String VALUE_1

See Also:
  Constant Field Values

### VALUE_0

    public static final String VALUE_0

See Also:
  Constant Field Values

Constructor Detail

### CustomBooleanEditor

    public CustomBooleanEditor(boolean allowEmpty)

  Create a new CustomBooleanEditor instance, with "true"/"on"/"yes" and "false"/"off"/"no" as recognized String values.

  The "allowEmpty" parameter states if an empty String should be allowed for parsing, i.e. get interpreted as null value. Else, an IllegalArgumentException gets thrown in that case.

  Parameters:
    `allowEmpty` - if empty strings should be allowed

### CustomBooleanEditor

    public CustomBooleanEditor(String trueString,
                               String falseString,
                               boolean allowEmpty)

  Create a new CustomBooleanEditor instance, with configurable String values for true and false.

  The "allowEmpty" parameter states if an empty String should be allowed for parsing, i.e. get interpreted as null value. Else, an IllegalArgumentException gets thrown in that case.

  Parameters:
    `trueString` - the String value that represents true: for example, "true" (VALUE_TRUE), "on" (VALUE_ON), "yes" (VALUE_YES) or some custom value
    `falseString` - the String value that represents false: for example, "false" (VALUE_FALSE), "off" (VALUE_OFF), "no" (VALUE_NO) or some custom value
    `allowEmpty` - if empty strings should be allowed
  See Also:
    `VALUE_TRUE`, `VALUE_FALSE`, `VALUE_ON`, `VALUE_OFF`, `VALUE_YES`, `VALUE_NO`

Method Detail

### setAsText

    public void setAsText(String text)
                   throws IllegalArgumentException

  Specified by:
    `setAsText` in interface `PropertyEditor`
  Overrides:
    `setAsText` in class `PropertyEditorSupport`
  Throws:
    `IllegalArgumentException`

### getAsText

    public String getAsText()

  Specified by:
    `getAsText` in interface `PropertyEditor`
  Overrides:
    `getAsText` in class `PropertyEditorSupport`