Skip to content

Commit 9c74b64

Browse files
committed
Comments
1 parent fcf11f2 commit 9c74b64

File tree

1 file changed

+5
-0
lines changed
  • headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/jdt/ls

1 file changed

+5
-0
lines changed

headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/jdt/ls/JdtLsProjectCache.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,9 @@ public void initialize(InitializeParams p, ServerCapabilities cap) {
338338

339339
private class JstLsClasspathListener implements ClasspathListener {
340340

341+
/*
342+
* Synchronize to make non-reentrant such that events handled in predictable order
343+
*/
341344
@Override
342345
public synchronized void changed(Event event) {
343346
log.debug("claspath event received {}", event);
@@ -351,6 +354,7 @@ public synchronized void changed(Event event) {
351354
synchronized (table) {
352355
deleted = table.remove(uri);
353356
}
357+
// Notify outside of the lock
354358
if (deleted!=null) {
355359
log.debug("removed from table = true");
356360
notifyDelete(deleted);
@@ -375,6 +379,7 @@ public synchronized void changed(Event event) {
375379
: new JdtLsJavaProject(server.getClient(), projectUri, classpath, JdtLsProjectCache.this, projectBuild);
376380
table.put(uri, newProject);
377381
}
382+
// Notify outside of the lock
378383
if (oldProject != null) {
379384
notifyChanged(newProject);
380385
} else {

0 commit comments

Comments
 (0)