From 144518da57bcaf3358a32b726d4d142383f37fb5 Mon Sep 17 00:00:00 2001 From: Joshua Collins Date: Thu, 20 Aug 2020 11:49:57 -0400 Subject: [PATCH] added delete agent function --- app/app.js | 12 ++++++++++++ app/store/agents.js | 10 ++++++++++ 2 files changed, 22 insertions(+) diff --git a/app/app.js b/app/app.js index 35674ea..75d5aca 100644 --- a/app/app.js +++ b/app/app.js @@ -60,6 +60,18 @@ app.get('/api/agents/:agentId/tasks', (req, res) => { } }) +app.delete('/api/agents/:agentId', (req, res) => { + const agentId = parseInt(req.params.agentId) + const status = agentStore.deleteAgentById(agentId) + if (status) { + res.status(200).json(agentId) + } else { + res.status(404).json({ + message: 'agent does not exist' + }) + } +}) + // Interact with tasks app.post('/api/tasks', (req, res) => { const { command, agentId } = req.body diff --git a/app/store/agents.js b/app/store/agents.js index c9a98fb..b74e6a8 100644 --- a/app/store/agents.js +++ b/app/store/agents.js @@ -41,6 +41,16 @@ const Agents = () => { return false } + obj.deleteAgentById = (agentId) => { + const index = obj.findIndex(agent => agent.id === agentId) + if (index !== -1) { + obj.splice(index, 1) + return true + } else { + return false + } + } + obj.getAllAgents = () => obj.agents return obj