return;
}
SVNLog log = parent == null ? parentArea.getLog() : parent.getLog();
SVNTreeConflictDescription treeConflict;
if (kind == SVNNodeKind.DIR && myWCAccess.isMissing(fullPath)
&& (entry.isScheduledForDeletion() || entry.isScheduledForReplacement())) {
treeConflict = null;
} else {
treeConflict = checkTreeConflict(fullPath, entry, parentArea, log, SVNConflictAction.DELETE, SVNNodeKind.NONE, theirURL);
}
if (treeConflict != null) {
addSkippedTree(fullPath);
SVNEvent event = SVNEventFactory.createSVNEvent(fullPath, entry.getKind(), null, myTargetRevision, SVNEventAction.TREE_CONFLICT, SVNEventAction.UPDATE_DELETE, null, null);
event.setPreviousRevision(entry.getRevision());
event.setPreviousURL(entry.getSVNURL());
myWCAccess.handleEvent(event);
if (treeConflict.getConflictReason() == SVNConflictReason.EDITED) {
if (parent != null) {
parent.flushLog();
parent.runLogs();
} else {
if (log != null) {
log.save();
parentArea.runLogs();
}
}
scheduleExistingEntryForReAdd(entry, fullPath, theirURL, true);
return;
} else if (treeConflict.getConflictReason() == SVNConflictReason.DELETED) {
// The item does not exist locally (except perhaps as a skeleton
// directory tree) because it was already scheduled for delete.
// We must complete the deletion, leaving the tree conflict info
// as the only difference from a normal deletion.
//