From f6dba7e61155658db7437507db1f13c48651a96d Mon Sep 17 00:00:00 2001 From: Euan Haining <ewrh1g20@soton.ac.uk> Date: Wed, 18 May 2022 21:03:02 +0100 Subject: [PATCH] synchronised removed operation --- Controller.java | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Controller.java b/Controller.java index 4305b57..7c79f4b 100644 --- a/Controller.java +++ b/Controller.java @@ -615,15 +615,17 @@ public class Controller { System.out.println("Remove operation started for file: " + filename); boolean exists = false; - for (Index i : index) { - if (i.getFilename().equals(filename)) { - exists = true; - if (i.getStatus().equals("remove in progress")) { - messageOutput.println("ERROR_FILE_DOES_NOT_EXIST"); - return; - } else if (i.getStatus().equals("store_in_progress")) { - messageOutput.println("ERROR_FILE_DOES_NOT_EXIST"); - return; + synchronized (clientLock) { + for (Index i : index) { + if (i.getFilename().equals(filename)) { + exists = true; + if (i.getStatus().equals("remove in progress")) { + messageOutput.println("ERROR_FILE_DOES_NOT_EXIST"); + return; + } else if (i.getStatus().equals("store_in_progress")) { + messageOutput.println("ERROR_FILE_DOES_NOT_EXIST"); + return; + } } } } -- GitLab