in velocity-tools-generic/src/main/java/org/apache/velocity/tools/ConversionUtils.java [853:877]
public static List asList(Object value)
{
if (value instanceof List) return (List)value;
else if (value.getClass().isArray())
{
Class componentClass = value.getClass().getComponentType();
if (componentClass.isPrimitive())
{
if (componentClass.equals(char.class)) value = ArrayUtils.toObject((char[])value);
else if (componentClass.equals(long.class)) value = ArrayUtils.toObject((long[])value);
else if (componentClass.equals(int.class)) value = ArrayUtils.toObject((int[])value);
else if (componentClass.equals(short.class)) value = ArrayUtils.toObject((short[])value);
else if (componentClass.equals(byte.class)) value = ArrayUtils.toObject((byte[])value);
else if (componentClass.equals(double.class)) value = ArrayUtils.toObject((double[])value);
else if (componentClass.equals(float.class)) value = ArrayUtils.toObject((float[])value);
}
return new ArrayList(Arrays.asList((Object[])value));
}
else
{
List ret = new ArrayList();
ret.add(value);
return ret;
}
}