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

53 lines
1.5 KiB
Java

package org.apache.commons.beanutils.converters;
import java.io.IOException;
import java.io.StreamTokenizer;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.beanutils.ConversionException;
import org.apache.commons.beanutils.Converter;
public abstract class AbstractArrayConverter implements Converter {
protected Object defaultValue = null;
protected static String[] strings = new String[0];
protected boolean useDefault = true;
public abstract Object convert(Class paramClass, Object paramObject);
protected List parseElements(String svalue) {
if (svalue == null)
throw new NullPointerException();
svalue = svalue.trim();
if (svalue.startsWith("{") && svalue.endsWith("}"))
svalue = svalue.substring(1, svalue.length() - 1);
try {
int ttype;
StreamTokenizer st = new StreamTokenizer(new StringReader(svalue));
st.whitespaceChars(44, 44);
st.ordinaryChars(48, 57);
st.ordinaryChars(46, 46);
st.ordinaryChars(45, 45);
st.wordChars(48, 57);
st.wordChars(46, 46);
st.wordChars(45, 45);
ArrayList list = new ArrayList();
while (true) {
ttype = st.nextToken();
if (ttype == -3 || ttype > 0) {
list.add(st.sval);
continue;
}
break;
}
if (ttype == -1)
return list;
throw new ConversionException("Encountered token of type " + ttype);
} catch (IOException e) {
throw new ConversionException(e);
}
}
}