final IFolder folder= project.getFolder(NAME_HISTORY_FOLDER); if (folder.exists()) folder.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
if (enable) project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); else { final IFolder folder= project.getFolder(NAME_HISTORY_FOLDER); if (folder.exists()) folder.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); }
	public void setProjectHistory(final IProject project, final boolean enable) throws CoreException {		Assert.isNotNull(project);		Assert.isTrue(project.isAccessible());		final String name= project.getName();		final URI uri= project.getLocationURI();		if (uri != null) {			try {				if (enable) {					final IFileStore source= EFS.getLocalFileSystem().getStore(RefactoringCorePlugin.getDefault().getStateLocation()).getChild(NAME_HISTORY_FOLDER).getChild(name);					if (source.fetchInfo().exists()) {						IFileStore destination= EFS.getStore(uri).getChild(NAME_HISTORY_FOLDER);						if (destination.fetchInfo().exists())							destination.delete(EFS.NONE, null);						destination.mkdir(EFS.NONE, null);						source.copy(destination, EFS.OVERWRITE, null);						source.delete(EFS.NONE, null);					}				} else {					final IFileStore source= EFS.getStore(uri).getChild(NAME_HISTORY_FOLDER);					if (source.fetchInfo().exists()) {						IFileStore destination= EFS.getLocalFileSystem().getStore(RefactoringCorePlugin.getDefault().getStateLocation()).getChild(NAME_HISTORY_FOLDER).getChild(name);						if (destination.fetchInfo().exists())							destination.delete(EFS.NONE, null);						destination.mkdir(EFS.NONE, null);						source.copy(destination, EFS.OVERWRITE, null);						source.delete(EFS.NONE, null);					}				}			} finally {				final IFolder folder= project.getFolder(NAME_HISTORY_FOLDER);				if (folder.exists())					folder.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());			}		}	}