예제 #1
0
        public HttpResponseMessage Delete(Guid uid)
        {
            try
            {
                DeletePictureQuery query = new DeletePictureQuery()
                {
                    MandatorUIDs         = RequestMandatorUIDs,
                    PictureDirectoryPath = ConfigurationManager.AppSettings["PictureDirectoryPath"],
                    IndividualPersonUID  = uid
                };

                DeletePictureQueryHandler handler = new DeletePictureQueryHandler(query, UnityContainer);

                handler.Handle();

                return(Request.CreateResponse(HttpStatusCode.Accepted));
            }
            catch (UnauthorizedAccessException e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.Unauthorized, e));
            }
            catch (DataException e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e));
            }
            catch (FileNotFoundException e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.NotFound, e));
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e));
            }
        }
예제 #2
0
 public DeletePictureQueryHandler(DeletePictureQuery query, IUnityContainer unityContainer) : base(unityContainer)
 {
     _query = query;
 }