Files
HRMS/hrmsEjb/org/apache/commons/beanutils/converters/CharacterArrayConverter.java
2025-07-28 13:56:49 +05:30

52 lines
1.6 KiB
Java

package org.apache.commons.beanutils.converters;
import java.util.List;
import org.apache.commons.beanutils.ConversionException;
public final class CharacterArrayConverter extends AbstractArrayConverter {
public CharacterArrayConverter() {
this.defaultValue = null;
this.useDefault = false;
}
public CharacterArrayConverter(Object defaultValue) {
this.defaultValue = defaultValue;
this.useDefault = true;
}
private static char[] model = new char[0];
public Object convert(Class type, Object value) {
if (value == null) {
if (this.useDefault)
return this.defaultValue;
throw new ConversionException("No value specified");
}
if (model.getClass() == value.getClass())
return value;
if (AbstractArrayConverter.strings.getClass() == value.getClass())
try {
String[] values = (String[])value;
char[] results = new char[values.length];
for (int i = 0; i < values.length; i++)
results[i] = values[i].charAt(0);
return results;
} catch (Exception e) {
if (this.useDefault)
return this.defaultValue;
throw new ConversionException(value.toString(), e);
}
try {
List list = parseElements(value.toString());
char[] results = new char[list.size()];
for (int i = 0; i < results.length; i++)
results[i] = ((String)list.get(i)).charAt(0);
return results;
} catch (Exception e) {
if (this.useDefault)
return this.defaultValue;
throw new ConversionException(value.toString(), e);
}
}
}