chore(lsp): Move folding range null safety to DefaultRequestManager

This commit is contained in:
FalsePattern 2023-08-18 10:39:02 +02:00 committed by FalsePattern
parent 4a8303597a
commit c1989f0b0b
Signed by: falsepattern
GPG key ID: FDF7126A9E124447
2 changed files with 3 additions and 7 deletions

View file

@ -87,6 +87,7 @@ import org.eclipse.lsp4j.services.WorkspaceService;
import com.falsepattern.zigbrains.lsp.client.languageserver.ServerStatus; import com.falsepattern.zigbrains.lsp.client.languageserver.ServerStatus;
import com.falsepattern.zigbrains.lsp.client.languageserver.wrapper.LanguageServerWrapper; import com.falsepattern.zigbrains.lsp.client.languageserver.wrapper.LanguageServerWrapper;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
@ -679,9 +680,10 @@ public class DefaultRequestManager implements RequestManager {
public CompletableFuture<List<FoldingRange>> foldingRange(FoldingRangeRequestParams params) { public CompletableFuture<List<FoldingRange>> foldingRange(FoldingRangeRequestParams params) {
if (checkStatus()) { if (checkStatus()) {
try { try {
return serverCapabilities.getFoldingRangeProvider() != null ? var future = serverCapabilities.getFoldingRangeProvider() != null ?
textDocumentService.foldingRange(params) : textDocumentService.foldingRange(params) :
null; null;
return future == null ? null : future.thenApply((range) -> range == null ? Collections.emptyList() : range);
} catch (Exception e) { } catch (Exception e) {
crashed(e); crashed(e);
return null; return null;

View file

@ -113,10 +113,4 @@ public class ZLSRequestManager extends DefaultRequestManager {
LOG.warn(e); LOG.warn(e);
getWrapper().crashed(e); getWrapper().crashed(e);
} }
@Override
public CompletableFuture<List<FoldingRange>> foldingRange(FoldingRangeRequestParams params) {
var future = super.foldingRange(params);
return future == null ? null : future.thenApply((range) -> range == null ? Collections.emptyList() : range);
}
} }