All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.springframework.core.convert.support.StringToBooleanConverterCustom Maven / Gradle / Ivy

package org.springframework.core.convert.support;

import java.util.HashSet;
import java.util.Set;

import org.springframework.core.convert.converter.Converter;

/**
 * @see org.springframework.core.convert.support.StringToBooleanConverter
 */
public class StringToBooleanConverterCustom implements Converter {
  private static final Set trueValues = new HashSet(6);
  private static final Set falseValues = new HashSet(6);
  static {
    trueValues.add("true");
    trueValues.add("on");
    trueValues.add("yes");
    trueValues.add("1");
    trueValues.add("t");
    trueValues.add("y");
    trueValues.add("o");

    falseValues.add("false");
    falseValues.add("off");
    falseValues.add("no");
    falseValues.add("0");
    falseValues.add("f");
    falseValues.add("n");
    falseValues.add("x");
  }

  @Override
  public Boolean convert(String source) {
    String value = source.trim();
    if ("".equals(value)) {
      return null;
    }
    value = value.toLowerCase();
    if (trueValues.contains(value)) {
      return Boolean.TRUE;
    }
    else if (falseValues.contains(value)) {
      return Boolean.FALSE;
    }
    else {
      throw new IllegalArgumentException("Invalid boolean value '" + source + "'");
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy