Your browser does not support JavaScript and this site utilizes JavaScript to build content and provide links to additional information. You should either enable JavaScript in your browser settings or use a browser that supports JavaScript in order to take full advantage of this site.
1 16 17 18 package org.apache.commons.beanutils.converters; 19 20 21 import org.apache.commons.beanutils.ConversionException; 22 import org.apache.commons.beanutils.Converter; 23 24 25 35 36 public final class BooleanConverter implements Converter { 37 38 39 41 42 46 public BooleanConverter() { 47 48 this.defaultValue = null; 49 this.useDefault = false; 50 51 } 52 53 54 60 public BooleanConverter(Object defaultValue) { 61 62 this.defaultValue = defaultValue; 63 this.useDefault = true; 64 65 } 66 67 68 70 71 74 private Object defaultValue = null; 75 76 77 80 private boolean useDefault = true; 81 82 83 85 86 96 public Object convert(Class type, Object value) { 97 98 if (value == null) { 99 if (useDefault) { 100 return (defaultValue); 101 } else { 102 throw new ConversionException("No value specified"); 103 } 104 } 105 106 if (value instanceof Boolean ) { 107 return (value); 108 } 109 110 try { 111 String stringValue = value.toString(); 112 if (stringValue.equalsIgnoreCase("yes") || 113 stringValue.equalsIgnoreCase("y") || 114 stringValue.equalsIgnoreCase("true") || 115 stringValue.equalsIgnoreCase("on") || 116 stringValue.equalsIgnoreCase("1")) { 117 return (Boolean.TRUE); 118 } else if (stringValue.equalsIgnoreCase("no") || 119 stringValue.equalsIgnoreCase("n") || 120 stringValue.equalsIgnoreCase("false") || 121 stringValue.equalsIgnoreCase("off") || 122 stringValue.equalsIgnoreCase("0")) { 123 return (Boolean.FALSE); 124 } else if (useDefault) { 125 return (defaultValue); 126 } else { 127 throw new ConversionException(stringValue); 128 } 129 } catch (ClassCastException e) { 130 if (useDefault) { 131 return (defaultValue); 132 } else { 133 throw new ConversionException(e); 134 } 135 } 136 137 } 138 139 140 } 141
| Popular Tags
|