@Override
public void setValue(Object base, int index, Object newValue) throws EvaluationException, PropertyNotFoundException
{
if (base == null)
{
throw new PropertyNotFoundException();
}
if (base instanceof Object[])
{
if (index < 0 || index >= ((Object[])base).length)
{
throw new PropertyNotFoundException();
}
}
else if (base instanceof List)
{
if (index < 0 || index >= ((List<?>)base).size())
{
throw new PropertyNotFoundException();
}
}
setValue(base, Integer.valueOf(index), newValue);
}