This is an automated email from the ASF dual-hosted git repository.

amichai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/aries-rsa.git

commit 18c7df019c04d2eaef54e6463f63e2826d2cb858
Author: Amichai Rothman <[email protected]>
AuthorDate: Tue May 28 11:07:17 2024 +0300

    ARIES-2130 Fix ConcurrentModificationException in ServiceExportsRepository
---
 .../aries/rsa/topologymanager/exporter/ServiceExportsRepository.java  | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/topology-manager/src/main/java/org/apache/aries/rsa/topologymanager/exporter/ServiceExportsRepository.java
 
b/topology-manager/src/main/java/org/apache/aries/rsa/topologymanager/exporter/ServiceExportsRepository.java
index fad6e3d7..2840c397 100644
--- 
a/topology-manager/src/main/java/org/apache/aries/rsa/topologymanager/exporter/ServiceExportsRepository.java
+++ 
b/topology-manager/src/main/java/org/apache/aries/rsa/topologymanager/exporter/ServiceExportsRepository.java
@@ -89,7 +89,7 @@ public class ServiceExportsRepository implements Closeable {
     }
 
     @Override
-    public void close() {
+    public synchronized void close() {
         LOG.debug("Closing registry for RemoteServiceAdmin {}", 
rsa.getClass().getName());
         for (ServiceReference<?> sref : exportsMap.keySet()) {
             removeService(sref);
@@ -126,7 +126,7 @@ public class ServiceExportsRepository implements Closeable {
         }
     }
 
-    public List<EndpointDescription> getAllEndpoints() {
+    public synchronized List<EndpointDescription> getAllEndpoints() {
         List<EndpointDescription> endpoints = new ArrayList<>();
         for (Collection<ExportRegistrationHolder> exports : 
exportsMap.values()) {
             for (ExportRegistrationHolder reg : exports) {

Reply via email to