BootUpgrade quickfix improvements. Springify version validation.

This commit is contained in:
aboyko
2023-01-26 21:58:45 -05:00
parent 13536a725b
commit f44e5f653d
13 changed files with 329 additions and 227 deletions

View File

@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2016, 2022 VMware Inc.
* Copyright (c) 2016, 2023 VMware Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -652,8 +652,6 @@ public final class SimpleLanguageServer implements Sts4LanguageServer, LanguageC
return workspace;
}
private DiagnosticSeverityProvider severityProvider = DiagnosticSeverityProvider.DEFAULT;
/**
* Keeps track of reconcile requests that have been requested but not yet started.
* This is used to more efficiently deal with situation where many requests are fired
@@ -783,6 +781,7 @@ public final class SimpleLanguageServer implements Sts4LanguageServer, LanguageC
@Override
public void accept(ReconcileProblem problem) {
DiagnosticSeverityProvider severityProvider = getDiagnosticSeverityProvider();
try {
DiagnosticSeverity severity = severityProvider.getDiagnosticSeverity(problem);
@@ -855,7 +854,7 @@ public final class SimpleLanguageServer implements Sts4LanguageServer, LanguageC
}
public DiagnosticSeverityProvider getDiagnosticSeverityProvider() {
return severityProvider;
return appContext.getBean(DiagnosticSeverityProvider.class);
}
@Override
@@ -905,10 +904,6 @@ public final class SimpleLanguageServer implements Sts4LanguageServer, LanguageC
return classpathListenerManager.addClasspathListener(classpathListener);
}
public void setDiagnosticSeverityProvider(DiagnosticSeverityProvider severities) {
this.severityProvider = severities;
}
public void setCompletionFilter(Optional<CompletionFilter> completionFilter) {
this.completionFilter = completionFilter;
}

View File

@@ -46,13 +46,11 @@ public class LanguageServerAutoConf {
@Bean(destroyMethod = "")
public SimpleLanguageServer languageServer(
LanguageServerProperties props,
Optional<DiagnosticSeverityProvider> severities,
Optional<CompletionFilter> completionFilter,
ApplicationContext appContext
) throws Exception {
SimpleLanguageServer server = new SimpleLanguageServer(props.getExtensionId(), appContext, props);
server.setCompletionFilter(completionFilter);
severities.ifPresent(server::setDiagnosticSeverityProvider);
return server;
}
@@ -112,4 +110,10 @@ public class LanguageServerAutoConf {
};
}
@ConditionalOnMissingBean(DiagnosticSeverityProvider.class)
@Bean
DiagnosticSeverityProvider defaultDiagnosticSeverityProvider() {
return DiagnosticSeverityProvider.DEFAULT;
}
}