Skip to content

Commit

Permalink
Socket: fixed delete file
Browse files Browse the repository at this point in the history
  • Loading branch information
pavelbannov committed Dec 28, 2023
1 parent ddd9859 commit 661631c
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,8 @@ private async Task DeleteFilesAsync(IEnumerable<T> fileIds, IServiceScope scope,
await fileMarker.RemoveMarkAsNewForAllAsync(file);
if (!_immediately && FileDao.UseTrashForRemove(file))
{
await FileDao.MoveFileAsync(file.Id, _trashId);
await socketManager.DeleteFileAsync(file, action: async () => await FileDao.MoveFileAsync(file.Id, _trashId));

if (isNeedSendActions)
{
await filesMessageService.SendAsync(MessageAction.FileMovedToTrash, file, _headers, file.Title);
Expand All @@ -323,14 +324,14 @@ private async Task DeleteFilesAsync(IEnumerable<T> fileIds, IServiceScope scope,
await FileDao.SetThumbnailStatusAsync(file, Thumbnail.NotRequired);
}

await socketManager.DeleteFileAsync(file);

}
else
{
try
{
await FileDao.DeleteFileAsync(file.Id);

await socketManager.DeleteFileAsync(file, action: async () => await FileDao.DeleteFileAsync(file.Id));
if (_headers != null)
{
if (isNeedSendActions)
Expand All @@ -342,8 +343,6 @@ private async Task DeleteFilesAsync(IEnumerable<T> fileIds, IServiceScope scope,
{
await filesMessageService.SendAsync(MessageAction.FileDeleted, file, MessageInitiator.AutoCleanUp, file.Title);
}

await socketManager.DeleteFileAsync(file);
}
catch (Exception ex)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -652,7 +652,8 @@ private async Task<List<FileEntry<TTo>>> MoveOrCopyFilesAsync<TTo>(IServiceScope
{
await fileMarker.RemoveMarkAsNewForAllAsync(file);

var newFileId = await FileDao.MoveFileAsync(file.Id, toFolderId);
TTo newFileId = default;
await socketManager.DeleteFileAsync(file, action: async () => newFileId = await FileDao.MoveFileAsync(file.Id, toFolderId));
newFile = await fileDao.GetFileAsync(newFileId);

await filesMessageService.SendAsync(MessageAction.FileMoved, file, toFolder, _headers, file.Title, parentFolder.Title, toFolder.Title);
Expand All @@ -674,8 +675,6 @@ private async Task<List<FileEntry<TTo>>> MoveOrCopyFilesAsync<TTo>(IServiceScope
needToMark.Add(newFile);
}

await socketManager.DeleteFileAsync(file);

await socketManager.CreateFileAsync(newFile);

if (ProcessedFile(fileId))
Expand Down Expand Up @@ -765,15 +764,16 @@ private async Task<List<FileEntry<TTo>>> MoveOrCopyFilesAsync<TTo>(IServiceScope
this[Err] = message;
}
else
{
await FileDao.DeleteFileAsync(file.Id);
{
await socketManager.DeleteFileAsync(file, action: async () =>
{
await FileDao.DeleteFileAsync(file.Id);

await LinkDao.DeleteAllLinkAsync(file.Id.ToString());
await LinkDao.DeleteAllLinkAsync(file.Id.ToString());
});

await filesMessageService.SendAsync(MessageAction.FileMovedWithOverwriting, file, toFolder, _headers, file.Title, parentFolder.Title, toFolder.Title);

await socketManager.DeleteFileAsync(file);

if (ProcessedFile(fileId))
{
sb.Append($"file_{newFile.Id}{SplitChar}");
Expand Down
4 changes: 2 additions & 2 deletions products/ASC.Files/Core/Utils/SocketManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -86,9 +86,9 @@ public async Task UpdateFolderAsync<T>(Folder<T> folder)
await MakeRequest("update-folder", folder, true);
}

public async Task DeleteFileAsync<T>(File<T> file, IEnumerable<Guid> users = null)
public async Task DeleteFileAsync<T>(File<T> file, Func<Task> action = null)
{
await MakeRequest("delete-file", file, users: users);
await MakeRequest("delete-file", file, action: action);
}

public async Task DeleteFolder<T>(Folder<T> folder, IEnumerable<Guid> users = null, Func<Task> action = null)
Expand Down

0 comments on commit 661631c

Please sign in to comment.