{
Class retType = info.getGetterMethod().getReturnType();
if (VirtualFile.class.isAssignableFrom(retType))
{
VirtualFile file = (VirtualFile) info.getGetterMethod().invoke(targetConfig, (Object[])null);
if (file != null)
{
if (info.doChecksum())
compile_checksum.append(file.getName());
link_checksum.append(file.getName());
}
continue;
}
else if (retType.isArray() && VirtualFile.class.isAssignableFrom(retType.getComponentType()))
{
VirtualFile[] files = (VirtualFile[]) info.getGetterMethod().invoke(targetConfig, (Object[])null);
for (int j = 0; files != null && j < files.length; j++)
{
if (files[j] != null)
{
if (info.doChecksum())
compile_checksum.append(files[j].getName());
link_checksum.append(files[j].getName());
}
}
continue;
}
}
if (args[i] instanceof Object[])
{
Object[] a = (Object[]) args[i];
for (int j = 0; j < a.length; j++)
{
if (info.doChecksum())
compile_checksum.append(a[j]);
link_checksum.append(a[j]);
}
}
else if (args[i] instanceof List)
{
List l = (List) args[i];
for (int j = 0; j < l.size(); j++)
{
if (info.doChecksum())
compile_checksum.append(l.get(j));
link_checksum.append(l.get(j));
}
}
else
{
if (info.doChecksum())
compile_checksum.append(args[i]);
link_checksum.append(args[i]);
}
}
if (info.getGetterMethod() == null)
{
// C: need to make sure that all the VirtualFile-based config values should have getters.
return;
}
Class retType = info.getGetterMethod().getReturnType();
if (VirtualFile.class.isAssignableFrom(retType))
{
VirtualFile file = (VirtualFile) info.getGetterMethod().invoke(targetConfig, (Object[])null);
if (file != null && !file.isDirectory())
{
if (info.doChecksum())
compile_checksum_ts.append(file.getLastModified());
link_checksum_ts.append(file.getLastModified());
}
}
else if (retType.isArray() && VirtualFile.class.isAssignableFrom(retType.getComponentType()))
{
VirtualFile[] files = (VirtualFile[]) info.getGetterMethod().invoke(targetConfig, (Object[])null);