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); }
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)); } }