Author: scabanovich
Date: 2008-08-14 06:28:51 -0400 (Thu, 14 Aug 2008)
New Revision: 9717
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/operation/JSFProjectAdoptOperation.java
Log:
JBIDE-2579
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/operation/JSFProjectAdoptOperation.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/operation/JSFProjectAdoptOperation.java 2008-08-14
10:16:16 UTC (rev 9716)
+++
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/operation/JSFProjectAdoptOperation.java 2008-08-14
10:28:51 UTC (rev 9717)
@@ -13,8 +13,11 @@
import java.io.File;
import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
+import org.jboss.tools.common.model.XJob;
import org.jboss.tools.common.model.XModelConstants;
import org.jboss.tools.common.model.XModelException;
import org.jboss.tools.common.model.project.IModelNature;
@@ -59,25 +62,47 @@
}
protected void postCreateWebNature() {
- File projectFile = getEclipseFile();
+ final File projectFile = getEclipseFile();
+ final IProject p = getProject();
+ model.getProperties().put(XModelConstants.AUTOLOAD, new JSFAutoLoad());
if(projectFile != null) {
if(projectFile.isFile()) {
- IFile f = EclipseResourceUtil.getFile(projectFile.getAbsolutePath());
- if(f != null && f.exists()) {
- try {
- f.delete(true, new NullProgressMonitor());
- } catch (CoreException e) {
- JSFModelPlugin.getPluginLog().logError(e);
+ XJob.addRunnable(new XJob.XRunnable() {
+ public String getId() {
+ return "Remove temporary working files.";
+ }
+ public void run() {
+ IFile f = EclipseResourceUtil.getFile(projectFile
+ .getAbsolutePath());
+ if (f != null && f.exists()) {
+ try {
+ f.delete(true, new NullProgressMonitor());
+ } catch (CoreException e) {
+ JSFModelPlugin.getPluginLog().logError(e);
+ deleteExternally();
+ }
+ } else {
+ deleteExternally();
+ }
+ }
+
+ private void deleteExternally() {
projectFile.delete();
+ if(p != null && p.exists()) {
+ try {
+ p.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
+ } catch (CoreException e2) {
+ JSFModelPlugin.getPluginLog().logError(e2);
+ }
+ }
}
- } else {
- projectFile.delete();
- }
+
+ });
}
}
- model.getProperties().put(XModelConstants.AUTOLOAD, new JSFAutoLoad());
}
+
private File getEclipseFile() {
String fn = getProject().getLocation().toString() + "/" +
IModelNature.PROJECT_FILE;
File f = new File(fn);
Show replies by date