public static int deleteOlderThan(java.io.File dirh, long min_age, java.io.FileFilter filter, boolean recursive)
		throws java.io.IOException
	{
		if (!dirh.exists()) return 0;
		java.io.File files[] = dirh.listFiles(filter);
		int dirsize = (files == null ? 0 : files.length);
		int cnt = 0;

		for (int idx = 0; idx != dirsize; idx++) {
			if (files[idx].isDirectory()) {
				if (recursive) cnt += deleteOlderThan(files[idx], min_age, filter, true);
			} else {
				if (min_age == -1 || files[idx].lastModified() < min_age) {
					deleteFile(files[idx]);
					cnt++;
				}
			}
		}
		if (min_age == -1) deleteFile(dirh);
		return cnt;
	}