示例#1
0
        /// <summary>
        /// Deletes a message with a given id by setting its content to null and deleting its picture
        /// </summary>
        /// <param name="actualRequest">the client request to be handled</param>
        /// <returns>the response to the given request</returns>
        private async Task <ActualRequest> DeleteMessageAsync(ActualRequest actualRequest)
        {
            Request request   = actualRequest.Request;
            int     messageId = Convert.ToInt32(request.Argument.ToString());
            bool    response  = await chatRepo.DeleteMessageAsync(messageId);

            if (response)
            {
                ImagesUtil.DeleteFile($"{FILE_PATH}/Messages", $"{messageId}.jpg");
            }

            Request responseRequest = new Request
            {
                ActionType = ActionType.MESSAGE_DELETE.ToString(),
                Argument   = JsonSerializer.Serialize(response)
            };

            return(new ActualRequest
            {
                Request = responseRequest,
                Images = null
            });
        }