Example #1
0
        public IHttpActionResult DeleteFolder(int id)
        {
            var fileEntity = FileRepository.GetFolder(id);

            if (fileEntity == null)
            {
                return(NotFound());
            }

            var children = FileRepository.GetChildren(id).ToList();

            if (children.Count == 0)
            {
                return(BadRequest(ModelState));
            }

            var fileUpdater = new FileEntityUpdater(fileEntity, FileRepository);

            fileUpdater.ChangeSeqNum(int.MaxValue);

            FileRepository.SaveInTransaction(r =>
            {
                r.Save();
                r.Remove(fileEntity);
            });

            return(Ok(fileEntity.ToFileViewModel()));
        }
Example #2
0
        public void UpdateFileEntity(IFileRepository folderRepository, FileEntity fileEntity)
        {
            var fileEntityUpdater = new FileEntityUpdater(fileEntity, folderRepository);

            if (!string.IsNullOrWhiteSpace(Name) && fileEntity.Name != Name)
            {
                fileEntityUpdater.ChangeName(Name);
            }

            if (SeqNum > 0 && SeqNum != fileEntity.SeqNum)
            {
                fileEntityUpdater.ChangeSeqNum(SeqNum);
                fileEntity.SeqNum = SeqNum;
            }
        }
Example #3
0
        public IHttpActionResult DeleteFile(int id)
        {
            var fileEntity = FileRepository.GetFile(id);

            if (fileEntity == null)
            {
                return(NotFound());
            }

            var fileUpdater = new FileEntityUpdater(fileEntity, FileRepository);

            fileUpdater.ChangeSeqNum(int.MaxValue);

            FileRepository.SaveInTransaction(r =>
            {
                r.Save();
                r.Remove(fileEntity);
            });

            return(Ok(fileEntity.ToFileViewModel()));
        }
Example #4
0
        public int GetNextSeqNumber(IFileRepository folderRepository, FileEntity fileEntity)
        {
            var fileEntityUpdater = new FileEntityUpdater(fileEntity, folderRepository);

            return(fileEntityUpdater.GetMaxSeqNum() + 1);
        }