status.setRemoteStatus(fileInfo.myURL, text, props, lock, fileInfo.myRemoteKind, fileInfo.myRemoteRevision, fileInfo.myRemoteDate, fileInfo.myRemoteAuthor);
}
private void tweakStatusHash(DirectoryInfo dirInfo, DirectoryInfo childDir, File path, SVNStatusType text, SVNStatusType props, SVNLock lock) throws SVNException {
Map hash = dirInfo.myChildrenStatuses;
SVNStatus status = (SVNStatus) hash.get(path);
if (status == null) {
if (text != SVNStatusType.STATUS_ADDED) {
return;
}
status = createStatus(path);
hash.put(path, status);
}
if (text == SVNStatusType.STATUS_ADDED && status.getRemoteContentsStatus() == SVNStatusType.STATUS_DELETED) {
text = SVNStatusType.STATUS_REPLACED;
}
if (text == SVNStatusType.STATUS_DELETED) {
// remote kind is NONE because entry is deleted in repository.
status.setRemoteStatus(dirInfo.myURL, text, props, lock, SVNNodeKind.NONE, null, null, null);
} else if (childDir == null) {
status.setRemoteStatus(dirInfo.myURL, text, props, lock, dirInfo.myRemoteKind, dirInfo.myRemoteRevision, dirInfo.myRemoteDate, dirInfo.myRemoteAuthor);
} else {
status.setRemoteStatus(childDir.myURL, text, props, lock, childDir.myRemoteKind, childDir.myRemoteRevision, childDir.myRemoteDate, childDir.myRemoteAuthor);
}
}