diff --git a/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/LanguageWorker.java b/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/LanguageWorker.java index dd19e028f..8da17a30e 100644 --- a/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/LanguageWorker.java +++ b/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/LanguageWorker.java @@ -17,7 +17,7 @@ */ public class LanguageWorker implements Runnable { - private static class Workitem { + private final static class Workitem { private String description; private Runnable runnable; @@ -159,7 +159,10 @@ public void run() { // actual work is not synchronized, so that requests can // come in while the work is done try { + long startTime = System.currentTimeMillis(); work.run(); + long duration = System.currentTimeMillis() - startTime; + WLogger.info("LanguageWorker: request " + work + " completed in " + duration + "ms"); } catch (Throwable e) { languageClient.showMessage(new MessageParams(MessageType.Error, "Request '" + work + "' could not be processed (see log for details): " + e.toString())); WLogger.severe(e); diff --git a/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/ModelManagerImpl.java b/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/ModelManagerImpl.java index 4acb7e704..13cf680f5 100644 --- a/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/ModelManagerImpl.java +++ b/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/ModelManagerImpl.java @@ -629,6 +629,10 @@ public void reconcile(Changes changes) { private void partialTypecheck(WurstModel model2, Collection toCheckRec, WurstGui gui, WurstCompilerJassImpl comp) { try { + WLogger.info("Running partial type check on files " + toCheckRec.stream() + .map(c -> c.getCuInfo().getFile().replaceAll("^.*[/\\\\]", "")) + .sorted() + .collect(Collectors.joining(", "))); clearCompilationUnits(toCheckRec); comp.addImportedLibs(model2, this::addCompilationUnit); comp.checkProg(model2, toCheckRec); diff --git a/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/requests/UserRequest.java b/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/requests/UserRequest.java index 955125442..00e6bfe42 100644 --- a/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/requests/UserRequest.java +++ b/de.peeeq.wurstscript/src/main/java/de/peeeq/wurstio/languageserver/requests/UserRequest.java @@ -40,5 +40,9 @@ public void handleException(LanguageClient languageClient, Throwable err, Comple resFut.completeExceptionally(err); } + @Override + public final String toString() { + return getClass().getSimpleName(); + } }