From b2494cbffc97b85db08c1c01648ddb249a5bf09b Mon Sep 17 00:00:00 2001
From: gmantele <gmantele@ari.uni-heidelberg.de>
Date: Fri, 15 Sep 2017 10:48:32 +0200
Subject: [PATCH] [UWS] Make the list of jobs concurrent (i.e. Thread safe).

_This commit aims to fix the issue #47_
---
 src/uws/job/JobList.java | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/uws/job/JobList.java b/src/uws/job/JobList.java
index 384039c..65117f2 100644
--- a/src/uws/job/JobList.java
+++ b/src/uws/job/JobList.java
@@ -22,9 +22,9 @@ package uws.job;
 
 import java.util.ArrayList;
 import java.util.Iterator;
-import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 import uws.UWSException;
 import uws.UWSExceptionFactory;
@@ -181,8 +181,8 @@ public class JobList extends SerializableUWSObject implements Iterable<UWSJob> {
 		}
 
 		name = jobListName;
-		jobsList = new LinkedHashMap<String,UWSJob>();
-		ownerJobs = new LinkedHashMap<JobOwner,Map<String,UWSJob>>();
+		jobsList = new ConcurrentHashMap<String,UWSJob>();
+		ownerJobs = new ConcurrentHashMap<JobOwner,Map<String,UWSJob>>();
 
 		this.executionManager = executionManager;
 
@@ -543,7 +543,7 @@ public class JobList extends SerializableUWSObject implements Iterable<UWSJob> {
 			if (owner != null){
 				// Index also this job in function of its owner:
 				if (!ownerJobs.containsKey(owner))
-					ownerJobs.put(owner, new LinkedHashMap<String,UWSJob>());
+					ownerJobs.put(owner, new ConcurrentHashMap<String,UWSJob>());
 				ownerJobs.get(owner).put(j.getJobId(), j);
 			}
 
-- 
GitLab