下面列出了org.eclipse.ui.dialogs.IOverwriteQuery#ALL 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@SuppressWarnings("deprecation")
public IProject importExample(ExampleData edata, IProgressMonitor monitor) {
try {
IProjectDescription original = ResourcesPlugin.getWorkspace()
.loadProjectDescription(new Path(edata.getProjectDir().getAbsolutePath()).append("/.project"));
IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(edata.getProjectDir().getName());
IProjectDescription clone = ResourcesPlugin.getWorkspace().newProjectDescription(original.getName());
clone.setBuildSpec(original.getBuildSpec());
clone.setComment(original.getComment());
clone.setDynamicReferences(original.getDynamicReferences());
clone.setNatureIds(original.getNatureIds());
clone.setReferencedProjects(original.getReferencedProjects());
if (project.exists()) {
return project;
}
project.create(clone, monitor);
project.open(monitor);
@SuppressWarnings("unchecked")
List<IFile> filesToImport = FileSystemStructureProvider.INSTANCE.getChildren(edata.getProjectDir());
ImportOperation io = new ImportOperation(project.getFullPath(), edata.getProjectDir(),
FileSystemStructureProvider.INSTANCE, new IOverwriteQuery() {
@Override
public String queryOverwrite(String pathString) {
return IOverwriteQuery.ALL;
}
}, filesToImport);
io.setOverwriteResources(true);
io.setCreateContainerStructure(false);
io.run(monitor);
project.refreshLocal(IProject.DEPTH_INFINITE, monitor);
return project;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
public String queryOverwrite(String pathString) {
// We always overwrite once we reach this point
return IOverwriteQuery.ALL;
}
@Override
public String queryOverwrite(String pathString) {
return IOverwriteQuery.ALL;
}