in extscript-core-root/extscript-core/src/main/java/org/apache/myfaces/extensions/scripting/core/common/util/ReflectUtil.java [55:92]
public static Object instantiate(Class clazz, Object... varargs)
{
Class[] classes = new Class[varargs.length];
for (int cnt = 0; cnt < varargs.length; cnt++)
{
if (varargs[cnt] instanceof Cast)
{
classes[cnt] = ((Cast) varargs[cnt]).getClazz();
varargs[cnt] = ((Cast) varargs[cnt]).getValue();
} else
{
classes[cnt] = varargs[cnt].getClass();
}
}
try
{
Constructor constr = clazz.getConstructor(classes);
return constr.newInstance(varargs);
}
catch (NoSuchMethodException e)
{
throw new RuntimeException(e);
}
catch (InvocationTargetException e)
{
throw new RuntimeException(e);
}
catch (IllegalAccessException e)
{
throw new RuntimeException(e);
}
catch (InstantiationException e)
{
throw new RuntimeException(e);
}
}/*this is mostly just a helper to bypass a groovy bug in a more