Skip to content

Commit aca6706

Browse files
author
Phillip Webb
committed
Rename RestTemplates to TestRestTemplate
Rename the RestTemplates to TestRestTemplate to help indicate that it's primarily intended for testing. Also now extend RestTemplate to allow direct use, rather than via factory methods. Fixes spring-projectsgh-599
1 parent d117a6b commit aca6706

File tree

24 files changed

+140
-127
lines changed

24 files changed

+140
-127
lines changed

spring-boot-docs/src/main/asciidoc/spring-boot-features.adoc

+6-6
Original file line numberDiff line numberDiff line change
@@ -1476,7 +1476,7 @@ interaction. For Example:
14761476
@Autowired
14771477
CityRepository repository;
14781478
1479-
RestTemplate restTemplate = RestTemplates.get();
1479+
RestTemplate restTemplate = new TestRestTemplate();
14801480
14811481
// ... interact with the running server
14821482
@@ -1547,22 +1547,22 @@ public class MyTest {
15471547
----
15481548

15491549
[[boot-features-rest-templates-test-utility]]
1550-
==== RestTemplates
1550+
==== TestRestTemplate
15511551

1552-
`RestTemplates` is a static convenience factory for instances of `RestTemplate` that are
1552+
`TestRestTemplate` is a convenience subclass of Spring's `RestTemplate` that is
15531553
useful in integration tests. You can get a vanilla template or one that sends Basic HTTP
15541554
authentication (with a username and password). And in either case the template will behave
15551555
in a friendly way for testing, not following redirects (so you can assert the response
15561556
location), ignoring cookies (so the template is stateless), and not throwing exceptions
15571557
on server-side errors. It is recommended, but not mandatory, to use Apache HTTP Client
1558-
(version 4.3.2 or better), and if you have that on your classpath the `RestTemplates` will
1559-
respond by configuring the client appropriately.
1558+
(version 4.3.2 or better), and if you have that on your classpath the `TestRestTemplate`
1559+
will respond by configuring the client appropriately.
15601560

15611561
[source,java,indent=0]
15621562
----
15631563
public class MyTest {
15641564
1565-
RestTemplate template = RestTemplates.get();
1565+
RestTemplate template = new TestRestTemplate();
15661566
15671567
@Test
15681568
public void testRequest() throws Exception {

spring-boot-samples/spring-boot-sample-actuator-log4j/src/test/java/sample/actuator/log4j/SampleActuatorApplicationTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import org.junit.Test;
2222
import org.junit.runner.RunWith;
2323
import org.springframework.boot.test.IntegrationTest;
24-
import org.springframework.boot.test.RestTemplates;
24+
import org.springframework.boot.test.TestRestTemplate;
2525
import org.springframework.boot.test.SpringApplicationConfiguration;
2626
import org.springframework.http.HttpStatus;
2727
import org.springframework.http.ResponseEntity;
@@ -46,7 +46,7 @@ public class SampleActuatorApplicationTests {
4646
@Test
4747
public void testHome() throws Exception {
4848
@SuppressWarnings("rawtypes")
49-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
49+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
5050
"http://localhost:8080", Map.class);
5151
assertEquals(HttpStatus.OK, entity.getStatusCode());
5252
@SuppressWarnings("unchecked")

spring-boot-samples/spring-boot-sample-actuator-ui/src/test/java/sample/actuator/ui/SampleActuatorUiApplicationPortTests.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import org.springframework.beans.factory.annotation.Value;
2525
import org.springframework.boot.autoconfigure.security.SecurityProperties;
2626
import org.springframework.boot.test.IntegrationTest;
27-
import org.springframework.boot.test.RestTemplates;
27+
import org.springframework.boot.test.TestRestTemplate;
2828
import org.springframework.boot.test.SpringApplicationConfiguration;
2929
import org.springframework.http.HttpStatus;
3030
import org.springframework.http.ResponseEntity;
@@ -59,22 +59,22 @@ public class SampleActuatorUiApplicationPortTests {
5959

6060
@Test
6161
public void testHome() throws Exception {
62-
ResponseEntity<String> entity = RestTemplates.get().getForEntity(
62+
ResponseEntity<String> entity = new TestRestTemplate().getForEntity(
6363
"http://localhost:" + this.port, String.class);
6464
assertEquals(HttpStatus.OK, entity.getStatusCode());
6565
}
6666

6767
@Test
6868
public void testMetrics() throws Exception {
6969
@SuppressWarnings("rawtypes")
70-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
70+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
7171
"http://localhost:" + this.managementPort + "/metrics", Map.class);
7272
assertEquals(HttpStatus.UNAUTHORIZED, entity.getStatusCode());
7373
}
7474

7575
@Test
7676
public void testHealth() throws Exception {
77-
ResponseEntity<String> entity = RestTemplates.get().getForEntity(
77+
ResponseEntity<String> entity = new TestRestTemplate().getForEntity(
7878
"http://localhost:" + this.managementPort + "/health", String.class);
7979
assertEquals(HttpStatus.OK, entity.getStatusCode());
8080
assertEquals("ok", entity.getBody());

spring-boot-samples/spring-boot-sample-actuator-ui/src/test/java/sample/actuator/ui/SampleActuatorUiApplicationTests.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import org.junit.Test;
2323
import org.junit.runner.RunWith;
2424
import org.springframework.boot.test.IntegrationTest;
25-
import org.springframework.boot.test.RestTemplates;
25+
import org.springframework.boot.test.TestRestTemplate;
2626
import org.springframework.boot.test.SpringApplicationConfiguration;
2727
import org.springframework.http.HttpEntity;
2828
import org.springframework.http.HttpHeaders;
@@ -53,7 +53,7 @@ public class SampleActuatorUiApplicationTests {
5353
public void testHome() throws Exception {
5454
HttpHeaders headers = new HttpHeaders();
5555
headers.setAccept(Arrays.asList(MediaType.TEXT_HTML));
56-
ResponseEntity<String> entity = RestTemplates.get().exchange(
56+
ResponseEntity<String> entity = new TestRestTemplate().exchange(
5757
"http://localhost:8080", HttpMethod.GET, new HttpEntity<Void>(headers),
5858
String.class);
5959
assertEquals(HttpStatus.OK, entity.getStatusCode());
@@ -63,7 +63,7 @@ public void testHome() throws Exception {
6363

6464
@Test
6565
public void testCss() throws Exception {
66-
ResponseEntity<String> entity = RestTemplates.get().getForEntity(
66+
ResponseEntity<String> entity = new TestRestTemplate().getForEntity(
6767
"http://localhost:8080/css/bootstrap.min.css", String.class);
6868
assertEquals(HttpStatus.OK, entity.getStatusCode());
6969
assertTrue("Wrong body:\n" + entity.getBody(), entity.getBody().contains("body"));
@@ -72,7 +72,7 @@ public void testCss() throws Exception {
7272
@Test
7373
public void testMetrics() throws Exception {
7474
@SuppressWarnings("rawtypes")
75-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
75+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
7676
"http://localhost:8080/metrics", Map.class);
7777
assertEquals(HttpStatus.UNAUTHORIZED, entity.getStatusCode());
7878
}
@@ -81,9 +81,9 @@ public void testMetrics() throws Exception {
8181
public void testError() throws Exception {
8282
HttpHeaders headers = new HttpHeaders();
8383
headers.setAccept(Arrays.asList(MediaType.TEXT_HTML));
84-
ResponseEntity<String> entity = RestTemplates.get().exchange(
85-
"http://localhost:8080/error", HttpMethod.GET,
86-
new HttpEntity<Void>(headers), String.class);
84+
ResponseEntity<String> entity = new TestRestTemplate().exchange(
85+
"http://localhost:8080/error", HttpMethod.GET, new HttpEntity<Void>(
86+
headers), String.class);
8787
assertEquals(HttpStatus.OK, entity.getStatusCode());
8888
assertTrue("Wrong body:\n" + entity.getBody(), entity.getBody()
8989
.contains("<html>"));

spring-boot-samples/spring-boot-sample-actuator/src/test/java/sample/actuator/EndpointsPropertiesSampleActuatorApplicationTests.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@
2121
import org.junit.Test;
2222
import org.junit.runner.RunWith;
2323
import org.springframework.boot.test.IntegrationTest;
24-
import org.springframework.boot.test.RestTemplates;
2524
import org.springframework.boot.test.SpringApplicationConfiguration;
25+
import org.springframework.boot.test.TestRestTemplate;
2626
import org.springframework.http.HttpStatus;
2727
import org.springframework.http.ResponseEntity;
2828
import org.springframework.test.annotation.DirtiesContext;
@@ -48,8 +48,8 @@ public class EndpointsPropertiesSampleActuatorApplicationTests {
4848
@Test
4949
public void testCustomErrorPath() throws Exception {
5050
@SuppressWarnings("rawtypes")
51-
ResponseEntity<Map> entity = RestTemplates.get("user", "password").getForEntity(
52-
"http://localhost:8080/oops", Map.class);
51+
ResponseEntity<Map> entity = new TestRestTemplate("user", "password")
52+
.getForEntity("http://localhost:8080/oops", Map.class);
5353
assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, entity.getStatusCode());
5454
@SuppressWarnings("unchecked")
5555
Map<String, Object> body = entity.getBody();
@@ -59,7 +59,7 @@ public void testCustomErrorPath() throws Exception {
5959

6060
@Test
6161
public void testCustomContextPath() throws Exception {
62-
ResponseEntity<String> entity = RestTemplates.get().getForEntity(
62+
ResponseEntity<String> entity = new TestRestTemplate().getForEntity(
6363
"http://localhost:8080/admin/health", String.class);
6464
assertEquals(HttpStatus.OK, entity.getStatusCode());
6565
String body = entity.getBody();

spring-boot-samples/spring-boot-sample-actuator/src/test/java/sample/actuator/ManagementAddressActuatorApplicationTests.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
import org.springframework.beans.factory.annotation.Value;
2525
import org.springframework.boot.autoconfigure.security.SecurityProperties;
2626
import org.springframework.boot.test.IntegrationTest;
27-
import org.springframework.boot.test.RestTemplates;
2827
import org.springframework.boot.test.SpringApplicationConfiguration;
28+
import org.springframework.boot.test.TestRestTemplate;
2929
import org.springframework.http.HttpStatus;
3030
import org.springframework.http.ResponseEntity;
3131
import org.springframework.test.annotation.DirtiesContext;
@@ -60,14 +60,14 @@ public class ManagementAddressActuatorApplicationTests {
6060
@Test
6161
public void testHome() throws Exception {
6262
@SuppressWarnings("rawtypes")
63-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
63+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
6464
"http://localhost:" + this.port, Map.class);
6565
assertEquals(HttpStatus.UNAUTHORIZED, entity.getStatusCode());
6666
}
6767

6868
@Test
6969
public void testHealth() throws Exception {
70-
ResponseEntity<String> entity = RestTemplates.get()
70+
ResponseEntity<String> entity = new TestRestTemplate()
7171
.getForEntity(
7272
"http://localhost:" + this.managementPort + "/admin/health",
7373
String.class);

spring-boot-samples/spring-boot-sample-actuator/src/test/java/sample/actuator/ManagementPortSampleActuatorApplicationTests.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
import org.springframework.beans.factory.annotation.Value;
2525
import org.springframework.boot.autoconfigure.security.SecurityProperties;
2626
import org.springframework.boot.test.IntegrationTest;
27-
import org.springframework.boot.test.RestTemplates;
2827
import org.springframework.boot.test.SpringApplicationConfiguration;
28+
import org.springframework.boot.test.TestRestTemplate;
2929
import org.springframework.http.HttpStatus;
3030
import org.springframework.http.ResponseEntity;
3131
import org.springframework.test.annotation.DirtiesContext;
@@ -60,7 +60,7 @@ public class ManagementPortSampleActuatorApplicationTests {
6060
@Test
6161
public void testHome() throws Exception {
6262
@SuppressWarnings("rawtypes")
63-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
63+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
6464
.getForEntity("http://localhost:" + this.port, Map.class);
6565
assertEquals(HttpStatus.OK, entity.getStatusCode());
6666
@SuppressWarnings("unchecked")
@@ -72,14 +72,14 @@ public void testHome() throws Exception {
7272
public void testMetrics() throws Exception {
7373
testHome(); // makes sure some requests have been made
7474
@SuppressWarnings("rawtypes")
75-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
75+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
7676
"http://localhost:" + this.managementPort + "/metrics", Map.class);
7777
assertEquals(HttpStatus.UNAUTHORIZED, entity.getStatusCode());
7878
}
7979

8080
@Test
8181
public void testHealth() throws Exception {
82-
ResponseEntity<String> entity = RestTemplates.get().getForEntity(
82+
ResponseEntity<String> entity = new TestRestTemplate().getForEntity(
8383
"http://localhost:" + this.managementPort + "/health", String.class);
8484
assertEquals(HttpStatus.OK, entity.getStatusCode());
8585
assertEquals("ok", entity.getBody());
@@ -88,7 +88,7 @@ public void testHealth() throws Exception {
8888
@Test
8989
public void testErrorPage() throws Exception {
9090
@SuppressWarnings("rawtypes")
91-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
91+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
9292
"http://localhost:" + this.managementPort + "/error", Map.class);
9393
assertEquals(HttpStatus.OK, entity.getStatusCode());
9494
@SuppressWarnings("unchecked")

spring-boot-samples/spring-boot-sample-actuator/src/test/java/sample/actuator/NoManagementSampleActuatorApplicationTests.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323
import org.springframework.beans.factory.annotation.Autowired;
2424
import org.springframework.boot.autoconfigure.security.SecurityProperties;
2525
import org.springframework.boot.test.IntegrationTest;
26-
import org.springframework.boot.test.RestTemplates;
2726
import org.springframework.boot.test.SpringApplicationConfiguration;
27+
import org.springframework.boot.test.TestRestTemplate;
2828
import org.springframework.http.HttpStatus;
2929
import org.springframework.http.ResponseEntity;
3030
import org.springframework.test.annotation.DirtiesContext;
@@ -53,7 +53,7 @@ public class NoManagementSampleActuatorApplicationTests {
5353
@Test
5454
public void testHome() throws Exception {
5555
@SuppressWarnings("rawtypes")
56-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
56+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
5757
.getForEntity("http://localhost:8080", Map.class);
5858
assertEquals(HttpStatus.OK, entity.getStatusCode());
5959
@SuppressWarnings("unchecked")
@@ -65,7 +65,7 @@ public void testHome() throws Exception {
6565
public void testMetricsNotAvailable() throws Exception {
6666
testHome(); // makes sure some requests have been made
6767
@SuppressWarnings("rawtypes")
68-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
68+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
6969
.getForEntity("http://localhost:8080/metrics", Map.class);
7070
assertEquals(HttpStatus.NOT_FOUND, entity.getStatusCode());
7171
}

spring-boot-samples/spring-boot-sample-actuator/src/test/java/sample/actuator/SampleActuatorApplicationTests.java

+12-12
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525
import org.springframework.beans.factory.annotation.Autowired;
2626
import org.springframework.boot.autoconfigure.security.SecurityProperties;
2727
import org.springframework.boot.test.IntegrationTest;
28-
import org.springframework.boot.test.RestTemplates;
2928
import org.springframework.boot.test.SpringApplicationConfiguration;
29+
import org.springframework.boot.test.TestRestTemplate;
3030
import org.springframework.http.HttpEntity;
3131
import org.springframework.http.HttpHeaders;
3232
import org.springframework.http.HttpMethod;
@@ -60,7 +60,7 @@ public class SampleActuatorApplicationTests {
6060
@Test
6161
public void testHomeIsSecure() throws Exception {
6262
@SuppressWarnings("rawtypes")
63-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
63+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
6464
"http://localhost:8080", Map.class);
6565
assertEquals(HttpStatus.UNAUTHORIZED, entity.getStatusCode());
6666
@SuppressWarnings("unchecked")
@@ -73,7 +73,7 @@ public void testHomeIsSecure() throws Exception {
7373
@Test
7474
public void testHome() throws Exception {
7575
@SuppressWarnings("rawtypes")
76-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
76+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
7777
.getForEntity("http://localhost:8080", Map.class);
7878
assertEquals(HttpStatus.OK, entity.getStatusCode());
7979
@SuppressWarnings("unchecked")
@@ -85,7 +85,7 @@ public void testHome() throws Exception {
8585
public void testMetrics() throws Exception {
8686
testHome(); // makes sure some requests have been made
8787
@SuppressWarnings("rawtypes")
88-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
88+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
8989
.getForEntity("http://localhost:8080/metrics", Map.class);
9090
assertEquals(HttpStatus.OK, entity.getStatusCode());
9191
@SuppressWarnings("unchecked")
@@ -96,7 +96,7 @@ public void testMetrics() throws Exception {
9696
@Test
9797
public void testEnv() throws Exception {
9898
@SuppressWarnings("rawtypes")
99-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
99+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
100100
.getForEntity("http://localhost:8080/env", Map.class);
101101
assertEquals(HttpStatus.OK, entity.getStatusCode());
102102
@SuppressWarnings("unchecked")
@@ -106,15 +106,15 @@ public void testEnv() throws Exception {
106106

107107
@Test
108108
public void testHealth() throws Exception {
109-
ResponseEntity<String> entity = RestTemplates.get().getForEntity(
109+
ResponseEntity<String> entity = new TestRestTemplate().getForEntity(
110110
"http://localhost:8080/health", String.class);
111111
assertEquals(HttpStatus.OK, entity.getStatusCode());
112112
assertEquals("ok", entity.getBody());
113113
}
114114

115115
@Test
116116
public void testErrorPage() throws Exception {
117-
ResponseEntity<String> entity = RestTemplates.get("user", getPassword())
117+
ResponseEntity<String> entity = new TestRestTemplate("user", getPassword())
118118
.getForEntity("http://localhost:8080/foo", String.class);
119119
assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, entity.getStatusCode());
120120
String body = entity.getBody();
@@ -127,7 +127,7 @@ public void testHtmlErrorPage() throws Exception {
127127
HttpHeaders headers = new HttpHeaders();
128128
headers.setAccept(Arrays.asList(MediaType.TEXT_HTML));
129129
HttpEntity<?> request = new HttpEntity<Void>(headers);
130-
ResponseEntity<String> entity = RestTemplates.get("user", getPassword())
130+
ResponseEntity<String> entity = new TestRestTemplate("user", getPassword())
131131
.exchange("http://localhost:8080/foo", HttpMethod.GET, request,
132132
String.class);
133133
assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, entity.getStatusCode());
@@ -139,9 +139,9 @@ public void testHtmlErrorPage() throws Exception {
139139

140140
@Test
141141
public void testTrace() throws Exception {
142-
RestTemplates.get().getForEntity("http://localhost:8080/health", String.class);
142+
new TestRestTemplate().getForEntity("http://localhost:8080/health", String.class);
143143
@SuppressWarnings("rawtypes")
144-
ResponseEntity<List> entity = RestTemplates.get("user", getPassword())
144+
ResponseEntity<List> entity = new TestRestTemplate("user", getPassword())
145145
.getForEntity("http://localhost:8080/trace", List.class);
146146
assertEquals(HttpStatus.OK, entity.getStatusCode());
147147
@SuppressWarnings("unchecked")
@@ -156,7 +156,7 @@ public void testTrace() throws Exception {
156156
@Test
157157
public void testErrorPageDirectAccess() throws Exception {
158158
@SuppressWarnings("rawtypes")
159-
ResponseEntity<Map> entity = RestTemplates.get().getForEntity(
159+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(
160160
"http://localhost:8080/error", Map.class);
161161
assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, entity.getStatusCode());
162162
@SuppressWarnings("unchecked")
@@ -168,7 +168,7 @@ public void testErrorPageDirectAccess() throws Exception {
168168
@Test
169169
public void testBeans() throws Exception {
170170
@SuppressWarnings("rawtypes")
171-
ResponseEntity<List> entity = RestTemplates.get("user", getPassword())
171+
ResponseEntity<List> entity = new TestRestTemplate("user", getPassword())
172172
.getForEntity("http://localhost:8080/beans", List.class);
173173
assertEquals(HttpStatus.OK, entity.getStatusCode());
174174
assertEquals(1, entity.getBody().size());

spring-boot-samples/spring-boot-sample-actuator/src/test/java/sample/actuator/ShutdownSampleActuatorApplicationTests.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
import org.springframework.beans.factory.annotation.Autowired;
2424
import org.springframework.boot.autoconfigure.security.SecurityProperties;
2525
import org.springframework.boot.test.IntegrationTest;
26-
import org.springframework.boot.test.RestTemplates;
26+
import org.springframework.boot.test.TestRestTemplate;
2727
import org.springframework.boot.test.SpringApplicationConfiguration;
2828
import org.springframework.http.HttpStatus;
2929
import org.springframework.http.ResponseEntity;
@@ -52,7 +52,7 @@ public class ShutdownSampleActuatorApplicationTests {
5252
@Test
5353
public void testHome() throws Exception {
5454
@SuppressWarnings("rawtypes")
55-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
55+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
5656
.getForEntity("http://localhost:8080", Map.class);
5757
assertEquals(HttpStatus.OK, entity.getStatusCode());
5858
@SuppressWarnings("unchecked")
@@ -63,7 +63,7 @@ public void testHome() throws Exception {
6363
@Test
6464
public void testShutdown() throws Exception {
6565
@SuppressWarnings("rawtypes")
66-
ResponseEntity<Map> entity = RestTemplates.get("user", getPassword())
66+
ResponseEntity<Map> entity = new TestRestTemplate("user", getPassword())
6767
.postForEntity("http://localhost:8080/shutdown", null, Map.class);
6868
assertEquals(HttpStatus.OK, entity.getStatusCode());
6969
@SuppressWarnings("unchecked")

0 commit comments

Comments
 (0)