public static boolean deleteDirectory(File dir)
	{
		if (Utils.isNull(dir, false) || !dir.exists() || !dir.isDirectory()) throw new IllegalArgumentException("'dir' Must exist and Must be a directory!");

		final String[] files = dir.list();

		for (final String file : files)
		{
			final File f = new File(dir, file);

			if (f.isDirectory())
			{
				deleteDirectory(f);
			}
			else
			{
				f.delete();
			}
		}
		return dir.delete();
	}