public HttpResponseMessage Delete([FromUri] List <Guid> fileMandatorUids, [FromUri] string filePath) { try { DeleteFileQuery query = new DeleteFileQuery() { MandatorUIDs = RequestMandatorUIDs, FilePath = filePath, FileMandatorUIDs = fileMandatorUids, FileSystemDirectoryPath = ConfigurationManager.AppSettings["FileSystemDirectory"] }; DeleteFileQueryHandler handler = new DeleteFileQueryHandler(query, UnityContainer); handler.Handle(); return(Request.CreateResponse(HttpStatusCode.Accepted)); } catch (UnauthorizedAccessException e) { return(Request.CreateErrorResponse(HttpStatusCode.Unauthorized, e)); } catch (FileNotFoundException e) { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, e)); } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e)); } }
public void Delete([FromQuery] DeleteFileQuery query) { var fileInfo = fileInfoProvider.GetFileInfo(query.File, HttpContext.Request.PathBase); if (fileInfo.PointsToHtmlFile) { fileFinder.ErasePage(fileInfo.HtmlFile); } else { fileFinder.DeleteFile(fileInfo.DerivedFileName); } }
public DeleteFileQueryHandler(DeleteFileQuery query, IUnityContainer unityContainer) : base(unityContainer) { _query = query; }