@@ -653,23 +653,19 @@ public <T> ResponseEntity<T> exchange(URI url, HttpMethod method, @Nullable Http
653
653
public <T > ResponseEntity <T > exchange (RequestEntity <?> requestEntity , Class <T > responseType )
654
654
throws RestClientException {
655
655
656
- Assert .notNull (requestEntity , "RequestEntity must not be null" );
657
-
658
656
RequestCallback requestCallback = httpEntityCallback (requestEntity , responseType );
659
657
ResponseExtractor <ResponseEntity <T >> responseExtractor = responseEntityExtractor (responseType );
660
- return nonNull (execute (requestEntity .getUrl (), requestEntity .getMethod (), requestCallback , responseExtractor ));
658
+ return nonNull (doExecute (requestEntity .getUrl (), requestEntity .getMethod (), requestCallback , responseExtractor ));
661
659
}
662
660
663
661
@ Override
664
662
public <T > ResponseEntity <T > exchange (RequestEntity <?> requestEntity , ParameterizedTypeReference <T > responseType )
665
663
throws RestClientException {
666
664
667
- Assert .notNull (requestEntity , "RequestEntity must not be null" );
668
-
669
665
Type type = responseType .getType ();
670
666
RequestCallback requestCallback = httpEntityCallback (requestEntity , type );
671
667
ResponseExtractor <ResponseEntity <T >> responseExtractor = responseEntityExtractor (type );
672
- return nonNull (execute (requestEntity .getUrl (), requestEntity .getMethod (), requestCallback , responseExtractor ));
668
+ return nonNull (doExecute (requestEntity .getUrl (), requestEntity .getMethod (), requestCallback , responseExtractor ));
673
669
}
674
670
675
671
@@ -696,7 +692,7 @@ public <T> T execute(String url, HttpMethod method, @Nullable RequestCallback re
696
692
697
693
@ Override
698
694
@ Nullable
699
- public <T > T execute (URI url , @ Nullable HttpMethod method , @ Nullable RequestCallback requestCallback ,
695
+ public <T > T execute (URI url , HttpMethod method , @ Nullable RequestCallback requestCallback ,
700
696
@ Nullable ResponseExtractor <T > responseExtractor ) throws RestClientException {
701
697
702
698
return doExecute (url , method , requestCallback , responseExtractor );
@@ -716,8 +712,8 @@ public <T> T execute(URI url, @Nullable HttpMethod method, @Nullable RequestCall
716
712
protected <T > T doExecute (URI url , @ Nullable HttpMethod method , @ Nullable RequestCallback requestCallback ,
717
713
@ Nullable ResponseExtractor <T > responseExtractor ) throws RestClientException {
718
714
719
- Assert .notNull (url , "'url' must not be null " );
720
- Assert .notNull (method , "'method' must not be null " );
715
+ Assert .notNull (url , "URI is required " );
716
+ Assert .notNull (method , "HttpMethod is required " );
721
717
ClientHttpResponse response = null ;
722
718
try {
723
719
ClientHttpRequest request = createRequest (url , method );
@@ -726,12 +722,7 @@ protected <T> T doExecute(URI url, @Nullable HttpMethod method, @Nullable Reques
726
722
}
727
723
response = request .execute ();
728
724
handleResponse (url , method , response );
729
- if (responseExtractor != null ) {
730
- return responseExtractor .extractData (response );
731
- }
732
- else {
733
- return null ;
734
- }
725
+ return (responseExtractor != null ? responseExtractor .extractData (response ) : null );
735
726
}
736
727
catch (IOException ex ) {
737
728
String resource = url .toString ();
@@ -829,7 +820,7 @@ private class AcceptHeaderRequestCallback implements RequestCallback {
829
820
@ Nullable
830
821
private final Type responseType ;
831
822
832
- private AcceptHeaderRequestCallback (@ Nullable Type responseType ) {
823
+ public AcceptHeaderRequestCallback (@ Nullable Type responseType ) {
833
824
this .responseType = responseType ;
834
825
}
835
826
@@ -886,11 +877,11 @@ private class HttpEntityRequestCallback extends AcceptHeaderRequestCallback {
886
877
887
878
private final HttpEntity <?> requestEntity ;
888
879
889
- private HttpEntityRequestCallback (@ Nullable Object requestBody ) {
880
+ public HttpEntityRequestCallback (@ Nullable Object requestBody ) {
890
881
this (requestBody , null );
891
882
}
892
883
893
- private HttpEntityRequestCallback (@ Nullable Object requestBody , @ Nullable Type responseType ) {
884
+ public HttpEntityRequestCallback (@ Nullable Object requestBody , @ Nullable Type responseType ) {
894
885
super (responseType );
895
886
if (requestBody instanceof HttpEntity ) {
896
887
this .requestEntity = (HttpEntity <?>) requestBody ;
@@ -1013,7 +1004,7 @@ public ResponseEntity<T> extractData(ClientHttpResponse response) throws IOExcep
1013
1004
private static class HeadersExtractor implements ResponseExtractor <HttpHeaders > {
1014
1005
1015
1006
@ Override
1016
- public HttpHeaders extractData (ClientHttpResponse response ) throws IOException {
1007
+ public HttpHeaders extractData (ClientHttpResponse response ) {
1017
1008
return response .getHeaders ();
1018
1009
}
1019
1010
}
0 commit comments