public void DeleteRemoteDocument(IDocument remoteDocument, SyncItem syncItem)
{
string message0 = "CmisSync Warning: You have deleted file " + syncItem.LocalPath +
"\nCmisSync will now delete it from the server. If you actually did not delete this file, please report a bug at [email protected]";
Logger.Info(message0);
//Utils.NotifyUser(message0);
if (remoteDocument.IsVersionSeriesCheckedOut != null
&& (bool)remoteDocument.IsVersionSeriesCheckedOut
&& remoteDocument.VersionSeriesCheckedOutBy != null
&& !remoteDocument.VersionSeriesCheckedOutBy.Equals(repoInfo.User))
{
string message = String.Format("Restoring file \"{0}\" because it is checked out on the server by another user: {1}",
syncItem.LocalPath, remoteDocument.VersionSeriesCheckedOutBy);
Logger.Info(message);
Utils.NotifyUser(message);
// Restore the deleted file
activityListener.ActivityStarted();
DownloadFile(remoteDocument, syncItem.RemotePath, Path.GetDirectoryName(syncItem.LocalPath));
activityListener.ActivityStopped();
}
else
{
// File has been recently removed locally, so remove it from server too.
activityListener.ActivityStarted();
Logger.Info("Removing locally deleted file on server: " + syncItem.RemotePath);
remoteDocument.DeleteAllVersions();
// Remove it from database.
database.RemoveFile(syncItem);
activityListener.ActivityStopped();
}
}