diff options
-rw-r--r-- | src/linux/ogOperations.py | 6 | ||||
-rw-r--r-- | src/ogRest.py | 14 |
2 files changed, 14 insertions, 6 deletions
diff --git a/src/linux/ogOperations.py b/src/linux/ogOperations.py index 447f188..1aa454f 100644 --- a/src/linux/ogOperations.py +++ b/src/linux/ogOperations.py @@ -74,5 +74,9 @@ def procirestore(httpparser): profile = httpparser.getProfile() cid = httpparser.getId() - result = subprocess.check_output([OG_PATH + 'interfaceAdm/RestaurarImagen', disk, partition, name, repo, ctype], shell=True) + try: + result = subprocess.check_output([OG_PATH + 'interfaceAdm/RestaurarImagen', disk, partition, name, repo, ctype], shell=True) + except: + raise ValueError('Error: Incorrect command value') + return result.decode('utf-8') diff --git a/src/ogRest.py b/src/ogRest.py index 99ecdbc..5119eea 100644 --- a/src/ogRest.py +++ b/src/ogRest.py @@ -106,9 +106,14 @@ class ogThread(): ogOperations.procsetup(httpparser) # Process image restore - def procirestore(msgqueue, httpparser): - msgqueue.queue.clear() - msgqueue.put(ogOperations.procirestore(httpparser)) + def procirestore(httpparser): + try: + ogOperations.procirestore(httpparser) + except ValueError as err: + client.send(restResponse.getResponse(ogResponses.INTERNAL_ERR)) + return + + client.send(restResponse.getResponse(ogResponses.OK)) class ogResponses(Enum): BAD_REQUEST=0 @@ -211,5 +216,4 @@ class ogRest(): client.send(restResponse.getResponse(ogResponses.OK)) def process_irestore(self, client, httpparser): - threading.Thread(target=ogThread.procirestore, args=(self.msgqueue, httpparser,)).start() - client.send(restResponse.getResponse(ogResponses.OK)) + threading.Thread(target=ogThread.procirestore, args=(client, httpparser,)).start() |