Lines 247-273
Link Here
|
247 |
org.eclipse.jdt.internal.core.CompilationUnit destCU = new org.eclipse.jdt.internal.core.CompilationUnit(dest, destName, DefaultWorkingCopyOwner.PRIMARY); |
247 |
org.eclipse.jdt.internal.core.CompilationUnit destCU = new org.eclipse.jdt.internal.core.CompilationUnit(dest, destName, DefaultWorkingCopyOwner.PRIMARY); |
248 |
if (!destFile.equals(sourceResource)) { |
248 |
if (!destFile.equals(sourceResource)) { |
249 |
try { |
249 |
try { |
250 |
if (destFile.exists()) { |
250 |
if (!destCU.isWorkingCopy()) { |
251 |
if (this.force) { |
251 |
if (destFile.exists()) { |
252 |
// we can remove it |
252 |
if (this.force) { |
253 |
deleteResource(destFile, IResource.KEEP_HISTORY); |
253 |
// we can remove it |
254 |
destCU.close(); // ensure the in-memory buffer for the dest CU is closed |
254 |
deleteResource(destFile, IResource.KEEP_HISTORY); |
|
|
255 |
destCU.close(); // ensure the in-memory buffer for the dest CU is closed |
256 |
} else { |
257 |
// abort |
258 |
throw new JavaModelException(new JavaModelStatus( |
259 |
IJavaModelStatusConstants.NAME_COLLISION, |
260 |
Messages.bind(Messages.status_nameCollision, destFile.getFullPath().toString()))); |
261 |
} |
262 |
} |
263 |
int flags = this.force ? IResource.FORCE : IResource.NONE; |
264 |
if (this.isMove()) { |
265 |
flags |= IResource.KEEP_HISTORY; |
266 |
sourceResource.move(destFile.getFullPath(), flags, getSubProgressMonitor(1)); |
255 |
} else { |
267 |
} else { |
256 |
// abort |
268 |
if (rewrite != null) flags |= IResource.KEEP_HISTORY; |
257 |
throw new JavaModelException(new JavaModelStatus( |
269 |
sourceResource.copy(destFile.getFullPath(), flags, getSubProgressMonitor(1)); |
258 |
IJavaModelStatusConstants.NAME_COLLISION, |
|
|
259 |
Messages.bind(Messages.status_nameCollision, destFile.getFullPath().toString()))); |
260 |
} |
270 |
} |
261 |
} |
271 |
this.setAttribute(HAS_MODIFIED_RESOURCE_ATTR, TRUE); |
262 |
int flags = this.force ? IResource.FORCE : IResource.NONE; |
|
|
263 |
if (this.isMove()) { |
264 |
flags |= IResource.KEEP_HISTORY; |
265 |
sourceResource.move(destFile.getFullPath(), flags, getSubProgressMonitor(1)); |
266 |
} else { |
272 |
} else { |
267 |
if (rewrite != null) flags |= IResource.KEEP_HISTORY; |
273 |
destCU.getBuffer().setContents(source.getBuffer().getContents()); |
268 |
sourceResource.copy(destFile.getFullPath(), flags, getSubProgressMonitor(1)); |
|
|
269 |
} |
274 |
} |
270 |
this.setAttribute(HAS_MODIFIED_RESOURCE_ATTR, TRUE); |
|
|
271 |
} catch (JavaModelException e) { |
275 |
} catch (JavaModelException e) { |
272 |
throw e; |
276 |
throw e; |
273 |
} catch (CoreException e) { |
277 |
} catch (CoreException e) { |