예제 #1
0
        public async Task <BTreeListResponseDTO> CreateBTreeFromListAsync(BTreeListRequestDTO listDTO)
        {
            if (listDTO.List.Count == 0)
            {
                throw new ArgumentNullException("Numbers must be a list of integers");
            }

            BTree binaryTree = new BTree();

            binaryTree.AddNodesFromList(listDTO.List);

            await _binaryTreeRepository.SaveBTreeAsync(binaryTree);

            BTreeListResponseDTO response = new BTreeListResponseDTO();

            response.UUID = binaryTree.UUID;

            return(response);
        }
예제 #2
0
        public async Task <ActionResult <BTreeListResponseDTO> > CreateBinaryTreeFromIntList([FromBody] BTreeListRequestDTO binaryListTree)
        {
            try
            {
                BTreeListResponseDTO binaryTreeListResponse = await _binaryTreeService.CreateBTreeFromListAsync(binaryListTree);

                return(Ok(binaryTreeListResponse));
            }
            catch (ArgumentNullException e)
            {
                System.Diagnostics.Debug.WriteLine(e.ToString());
                return(BadRequest(e.Message));
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e.ToString());
                return(Problem(e.Message, null, 500));
            }
        }