Skip to content

Commit c3196c2

Browse files
committed
update language servers to spring boot 4
1 parent 8d6bdba commit c3196c2

File tree

10 files changed

+28
-39
lines changed

10 files changed

+28
-39
lines changed

headless-services/bosh-language-server/src/main/java/org/springframework/ide/vscode/bosh/BoshDeploymentManifestSchema.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,6 @@
2929
import org.springframework.ide.vscode.commons.util.Assert;
3030
import org.springframework.ide.vscode.commons.util.CollectorUtil;
3131
import org.springframework.ide.vscode.commons.util.PartialCollection;
32-
import org.springframework.ide.vscode.commons.util.Renderable;
33-
import org.springframework.ide.vscode.commons.util.Renderables;
3432
import org.springframework.ide.vscode.commons.util.StringUtil;
3533
import org.springframework.ide.vscode.commons.util.ValueParsers;
3634
import org.springframework.ide.vscode.commons.yaml.ast.NodeUtil;
@@ -46,12 +44,10 @@
4644
import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YAtomicType;
4745
import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YBeanType;
4846
import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YContextSensitive;
49-
import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YTypedPropertyImpl;
5047
import org.springframework.ide.vscode.commons.yaml.schema.YTypeUtil;
5148
import org.springframework.ide.vscode.commons.yaml.schema.YTypedProperty;
5249
import org.springframework.ide.vscode.commons.yaml.schema.YamlSchema;
5350
import org.springframework.ide.vscode.commons.yaml.schema.constraints.Constraints;
54-
import org.springframework.ide.vscode.commons.yaml.snippet.SchemaBasedSnippetGenerator;
5551

5652
import com.google.common.collect.ImmutableList;
5753
import com.google.common.collect.ImmutableSet;

headless-services/bosh-language-server/src/test/java/org/springframework/ide/vscode/bosh/BoshEditorTest.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
import org.junit.jupiter.api.Test;
3232
import org.junit.jupiter.api.extension.ExtendWith;
3333
import org.springframework.beans.factory.annotation.Autowired;
34-
import org.springframework.boot.test.mock.mockito.MockBean;
3534
import org.springframework.ide.vscode.bosh.bootiful.BoshLanguageServerTest;
3635
import org.springframework.ide.vscode.bosh.mocks.MockCloudConfigProvider;
3736
import org.springframework.ide.vscode.bosh.models.BoshCommandReleasesProvider;
@@ -47,6 +46,7 @@
4746
import org.springframework.ide.vscode.languageserver.testharness.CodeAction;
4847
import org.springframework.ide.vscode.languageserver.testharness.Editor;
4948
import org.springframework.ide.vscode.languageserver.testharness.LanguageServerHarness;
49+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
5050
import org.springframework.test.context.junit.jupiter.SpringExtension;
5151

5252
import com.google.common.collect.ImmutableMultiset;
@@ -62,8 +62,8 @@ public class BoshEditorTest {
6262
@Autowired BoshCliConfig cliConfig;
6363
@Autowired MockCloudConfigProvider cloudConfigProvider;
6464

65-
@MockBean DynamicModelProvider<StemcellsModel> stemcellsProvider;
66-
@MockBean DynamicModelProvider<ReleasesModel> releasesProvider;
65+
@MockitoBean DynamicModelProvider<StemcellsModel> stemcellsProvider;
66+
@MockitoBean DynamicModelProvider<ReleasesModel> releasesProvider;
6767

6868
@BeforeEach public void setup() throws Exception {
6969
harness.intialize(null);
@@ -1035,7 +1035,6 @@ void contentAssistStemcellNameNoDirector() throws Exception {
10351035
assertContains("Couldn't connect to bosh", getDocString(c));
10361036
}
10371037

1038-
@SuppressWarnings("unchecked")
10391038
@Test
10401039
void contentAssistStemcellVersionNoDirector() throws Exception {
10411040
Editor editor;

headless-services/bosh-language-server/src/test/java/org/springframework/ide/vscode/bosh/BoshLanguageServerInitializerTest.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
package org.springframework.ide.vscode.bosh;
1212

1313
import static org.assertj.core.api.Assertions.assertThat;
14+
1415
import java.io.File;
1516
import java.net.URISyntaxException;
1617
import java.nio.file.Paths;
@@ -20,15 +21,13 @@
2021
import org.junit.jupiter.api.Test;
2122
import org.junit.jupiter.api.extension.ExtendWith;
2223
import org.springframework.beans.factory.annotation.Autowired;
23-
import org.springframework.boot.test.mock.mockito.MockBean;
2424
import org.springframework.ide.vscode.bosh.bootiful.BoshLanguageServerTest;
25-
import org.springframework.ide.vscode.bosh.mocks.MockCloudConfigProvider;
2625
import org.springframework.ide.vscode.bosh.models.CloudConfigModel;
2726
import org.springframework.ide.vscode.bosh.models.DynamicModelProvider;
2827
import org.springframework.ide.vscode.bosh.models.ReleasesModel;
2928
import org.springframework.ide.vscode.bosh.models.StemcellsModel;
30-
import org.springframework.ide.vscode.commons.languageserver.util.SimpleLanguageServer;
3129
import org.springframework.ide.vscode.languageserver.testharness.LanguageServerHarness;
30+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
3231
import org.springframework.test.context.junit.jupiter.SpringExtension;
3332

3433
@ExtendWith(SpringExtension.class)
@@ -39,9 +38,9 @@ public static File getTestResource(String name) throws URISyntaxException {
3938
return Paths.get(BoshLanguageServerInitializerTest.class.getResource(name).toURI()).toFile();
4039
}
4140

42-
@MockBean DynamicModelProvider<CloudConfigModel> cloudConfigProvider;
43-
@MockBean DynamicModelProvider<StemcellsModel> stemcellsProvider;
44-
@MockBean DynamicModelProvider<ReleasesModel> releasesProvider;
41+
@MockitoBean DynamicModelProvider<CloudConfigModel> cloudConfigProvider;
42+
@MockitoBean DynamicModelProvider<StemcellsModel> stemcellsProvider;
43+
@MockitoBean DynamicModelProvider<ReleasesModel> releasesProvider;
4544

4645
@Autowired
4746
LanguageServerHarness harness;

headless-services/bosh-language-server/src/test/java/org/springframework/ide/vscode/bosh/BoshValueParserTest.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
import static org.junit.jupiter.api.Assertions.assertTrue;
1515

1616
import org.junit.jupiter.api.Test;
17-
import org.springframework.ide.vscode.bosh.BoshValueParsers;
1817
import org.springframework.ide.vscode.commons.util.ValueParseException;
1918
import org.springframework.ide.vscode.commons.util.ValueParser;
2019

headless-services/commons/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<parent>
1414
<groupId>org.springframework.boot</groupId>
1515
<artifactId>spring-boot-starter-parent</artifactId>
16-
<version>3.4.0</version>
16+
<version>4.0.0-M3</version>
1717
<relativePath></relativePath>
1818
</parent>
1919

headless-services/concourse-language-server/src/main/java/org/springframework/ide/vscode/concourse/PipelineYmlSchema.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@
3131
import org.springframework.ide.vscode.commons.yaml.ast.YamlFileAST;
3232
import org.springframework.ide.vscode.commons.yaml.path.YamlPath;
3333
import org.springframework.ide.vscode.commons.yaml.path.YamlPathSegment;
34+
import org.springframework.ide.vscode.commons.yaml.reconcile.TypeBasedYamlHierarchicalSymbolHandler.HierarchicalDefType;
3435
import org.springframework.ide.vscode.commons.yaml.reconcile.YamlSchemaProblems;
3536
import org.springframework.ide.vscode.commons.yaml.reconcile.YamlSchemaValueParsers;
36-
import org.springframework.ide.vscode.commons.yaml.reconcile.TypeBasedYamlHierarchicalSymbolHandler.HierarchicalDefType;
3737
import org.springframework.ide.vscode.commons.yaml.schema.BasicYValueHint;
3838
import org.springframework.ide.vscode.commons.yaml.schema.DynamicSchemaContext;
3939
import org.springframework.ide.vscode.commons.yaml.schema.YType;
@@ -48,7 +48,6 @@
4848
import org.springframework.ide.vscode.commons.yaml.schema.YTypedProperty;
4949
import org.springframework.ide.vscode.commons.yaml.schema.YValueHint;
5050
import org.springframework.ide.vscode.commons.yaml.schema.YamlSchema;
51-
import org.springframework.ide.vscode.commons.yaml.schema.constraints.Constraint;
5251
import org.springframework.ide.vscode.commons.yaml.schema.constraints.Constraints;
5352
import org.springframework.ide.vscode.concourse.ConcourseModel.ResourceModel;
5453
import org.springframework.ide.vscode.concourse.ConcourseModel.StepModel;

headless-services/concourse-language-server/src/test/java/org/springframework/ide/vscode/concourse/ConcourseEditorTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
import org.slf4j.Logger;
3838
import org.slf4j.LoggerFactory;
3939
import org.springframework.beans.factory.annotation.Autowired;
40-
import org.springframework.boot.test.mock.mockito.MockBean;
4140
import org.springframework.ide.vscode.commons.util.IOUtil;
4241
import org.springframework.ide.vscode.commons.util.Unicodes;
4342
import org.springframework.ide.vscode.commons.util.text.LanguageId;
@@ -49,6 +48,7 @@
4948
import org.springframework.ide.vscode.languageserver.testharness.Editor;
5049
import org.springframework.ide.vscode.languageserver.testharness.LanguageServerHarness;
5150
import org.springframework.ide.vscode.languageserver.testharness.SynchronizationPoint;
51+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
5252
import org.springframework.test.context.junit.jupiter.SpringExtension;
5353

5454
import com.google.common.collect.ImmutableList;
@@ -72,7 +72,7 @@ public class ConcourseEditorTest {
7272
@Autowired
7373
LanguageServerHarness harness;
7474

75-
@MockBean
75+
@MockitoBean
7676
private GithubInfoProvider github;
7777

7878
@BeforeEach public void setup() throws Exception {

headless-services/concourse-language-server/src/test/java/org/springframework/ide/vscode/concourse/ConcourseLanguageServerInitializerTest.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,11 @@
2222
import org.junit.jupiter.api.Test;
2323
import org.junit.jupiter.api.extension.ExtendWith;
2424
import org.springframework.beans.factory.annotation.Autowired;
25-
import org.springframework.boot.test.mock.mockito.MockBean;
2625
import org.springframework.ide.vscode.concourse.bootiful.ConcourseLanguageServerTest;
2726
import org.springframework.ide.vscode.concourse.github.GithubInfoProvider;
28-
import org.springframework.test.context.junit.jupiter.SpringExtension;
29-
3027
import org.springframework.ide.vscode.languageserver.testharness.LanguageServerHarness;
28+
import org.springframework.test.context.bean.override.mockito.MockitoBean;
29+
import org.springframework.test.context.junit.jupiter.SpringExtension;
3130

3231
@ExtendWith(SpringExtension.class)
3332
@ConcourseLanguageServerTest
@@ -38,7 +37,7 @@ public static File getTestResource(String name) throws URISyntaxException {
3837
}
3938

4039
@Autowired LanguageServerHarness harness;
41-
@MockBean GithubInfoProvider github;
40+
@MockitoBean GithubInfoProvider github;
4241

4342
@Test
4443
void createAndInitializeServerWithWorkspace() throws Exception {

headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/v2/HttpActuatorConnection.java

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2022 VMware, Inc.
2+
* Copyright (c) 2022, 2025 VMware, Inc.
33
* All rights reserved. This program and the accompanying materials
44
* are made available under the terms of the Eclipse Public License v1.0
55
* which accompanies this distribution, and is available at
@@ -11,13 +11,11 @@
1111
package org.springframework.ide.vscode.boot.java.livehover.v2;
1212

1313
import java.io.IOException;
14-
import java.net.URI;
1514
import java.util.Map;
1615
import java.util.Map.Entry;
1716
import java.util.Properties;
1817

19-
import org.springframework.boot.web.client.RestTemplateBuilder;
20-
import org.springframework.web.client.RestTemplate;
18+
import org.springframework.web.client.RestClient;
2119
import org.springframework.web.util.UriComponentsBuilder;
2220

2321
import com.google.gson.Gson;
@@ -28,18 +26,18 @@
2826
public class HttpActuatorConnection implements ActuatorConnection {
2927

3028
private Gson gson;
31-
private RestTemplate restTemplate;
29+
private RestClient restClient;
3230
private String actuatorUrl;
3331

3432
public HttpActuatorConnection(String actuatorUrl) {
3533
this.actuatorUrl = actuatorUrl;
36-
this.restTemplate = new RestTemplateBuilder().rootUri(actuatorUrl).build();
34+
this.restClient = RestClient.create();
3735
this.gson = new Gson();
3836
}
3937

4038
@Override
4139
public String getEnvironment() {
42-
return restTemplate.getForObject("/env", String.class);
40+
return restClient.get().uri(actuatorUrl + "/env").retrieve().toEntity(String.class).getBody();
4341
}
4442

4543
@Override
@@ -67,22 +65,22 @@ public Properties getSystemProperties() {
6765

6866
@Override
6967
public String getConditionalsReport() throws IOException {
70-
return restTemplate.getForObject("/conditions", String.class);
68+
return restClient.get().uri(actuatorUrl + "/conditions").retrieve().toEntity(String.class).getBody();
7169
}
7270

7371
@Override
7472
public String getRequestMappings() throws IOException {
75-
return restTemplate.getForObject("/mappings", String.class);
73+
return restClient.get().uri(actuatorUrl + "/mappings").retrieve().toEntity(String.class).getBody();
7674
}
7775

7876
@Override
7977
public String getBeans() throws IOException {
80-
return restTemplate.getForObject("/beans", String.class);
78+
return restClient.get().uri(actuatorUrl + "/beans").retrieve().toEntity(String.class).getBody();
8179
}
8280

8381
@Override
8482
public String getLoggers() throws IOException {
85-
return restTemplate.getForObject("/loggers", String.class);
83+
return restClient.get().uri(actuatorUrl + "/loggers").retrieve().toEntity(String.class).getBody();
8684
}
8785

8886
@Override
@@ -92,7 +90,7 @@ public String configureLogLevel(Map<String, String> args) throws IOException {
9290
uriBuilder.queryParam("configuredLevel", args.get("configuredLevel"));
9391
}
9492
String url = actuatorUrl + uriBuilder.toUriString();
95-
return restTemplate.postForObject(URI.create(url), null, String.class);
93+
return restClient.post().uri(url).body(null).retrieve().toEntity(String.class).getBody();
9694
}
9795

9896
@Override
@@ -103,7 +101,7 @@ public String getLiveMetrics(String metricName, String tags) throws IOException
103101
}
104102
// /{ownerId}/new cases make REST Template URI template handler to think that {ownerId} is a URI parameter which it is not.
105103
String url = actuatorUrl + uriBuilder.toUriString();
106-
return restTemplate.getForObject(URI.create(url), String.class);
104+
return restClient.get().uri(url).retrieve().toEntity(String.class).getBody();
107105
}
108106

109107
@Override
@@ -116,7 +114,7 @@ public String getMetrics(String metric, Map<String, String> tags) throws IOExcep
116114
}
117115
// /{ownerId}/new cases make REST Template URI template handler to think that {ownerId} is a URI parameter which it is not.
118116
String url = actuatorUrl + uriBuilder.toUriString();
119-
return restTemplate.getForObject(URI.create(url), String.class);
117+
return restClient.get().uri(url).retrieve().toEntity(String.class).getBody();
120118
}
121119

122120
@Override

headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/mcp/EmbeddedMcpServer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
import org.eclipse.lsp4j.MessageParams;
1414
import org.eclipse.lsp4j.MessageType;
15-
import org.springframework.boot.web.servlet.context.ServletWebServerInitializedEvent;
15+
import org.springframework.boot.web.server.servlet.context.ServletWebServerInitializedEvent;
1616
import org.springframework.context.event.EventListener;
1717
import org.springframework.ide.vscode.commons.languageserver.util.SimpleLanguageServer;
1818
import org.springframework.stereotype.Component;

0 commit comments

Comments
 (0)