@ -1,11 +1,11 @@
@@ -1,11 +1,11 @@
/ *
* Copyright 2002 - 2014 the original author or authors .
* Copyright 2002 - 2016 the original author or authors .
*
* Licensed under the Apache License , Version 2 . 0 ( the "License" ) ;
* you may not use this file except in compliance with the License .
* You may obtain a copy of the License at
*
* http : //www.apache.org/licenses/LICENSE-2.0
* http : //www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing , software
* distributed under the License is distributed on an "AS IS" BASIS ,
@ -28,9 +28,9 @@ import org.springframework.http.RequestEntity;
@@ -28,9 +28,9 @@ import org.springframework.http.RequestEntity;
import org.springframework.http.ResponseEntity ;
/ * *
* Interface specifying a basic set of RESTful operations . Implemented by { @link RestTemplate } .
* Not often used directly , but a useful option to enhance testability , as it can easily
* be mocked or stubbed .
* Interface specifying a basic set of RESTful operations .
* Implemented by { @link RestTemplate } . Not often used directly , but a useful
* option to enhance testability , as it can easily be mocked or stubbed .
*
* @author Arjen Poutsma
* @author Juergen Hoeller
@ -139,13 +139,13 @@ public interface RestOperations {
@@ -139,13 +139,13 @@ public interface RestOperations {
// POST
/ * *
* Create a new resource by POSTing the given object to the URI template , and returns the value of the
* { @code Location } header . This header typically indicates where the new resource is stored .
* Create a new resource by POSTing the given object to the URI template , and returns the value of
* the { @code Location } header . This header typically indicates where the new resource is stored .
* < p > URI Template variables are expanded using the given URI variables , if any .
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param uriVariables the variables to expand the template
* @return the value for the { @code Location } header
* @see HttpEntity
@ -153,13 +153,13 @@ public interface RestOperations {
@@ -153,13 +153,13 @@ public interface RestOperations {
URI postForLocation ( String url , Object request , Object . . . uriVariables ) throws RestClientException ;
/ * *
* Create a new resource by POSTing the given object to the URI template , and returns the value of the
* { @code Location } header . This header typically indicates where the new resource is stored .
* Create a new resource by POSTing the given object to the URI template , and returns the value of
* the { @code Location } header . This header typically indicates where the new resource is stored .
* < p > URI Template variables are expanded using the given map .
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param uriVariables the variables to expand the template
* @return the value for the { @code Location } header
* @see HttpEntity
@ -172,7 +172,7 @@ public interface RestOperations {
@@ -172,7 +172,7 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @return the value for the { @code Location } header
* @see HttpEntity
* /
@ -185,7 +185,7 @@ public interface RestOperations {
@@ -185,7 +185,7 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand the template
* @return the converted object
@ -201,7 +201,7 @@ public interface RestOperations {
@@ -201,7 +201,7 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand the template
* @return the converted object
@ -216,7 +216,7 @@ public interface RestOperations {
@@ -216,7 +216,7 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param responseType the type of the return value
* @return the converted object
* @see HttpEntity
@ -230,11 +230,11 @@ public interface RestOperations {
@@ -230,11 +230,11 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param uriVariables the variables to expand the template
* @return the converted object
* @see HttpEntity
* @since 3 . 0 . 2
* @see HttpEntity
* /
< T > ResponseEntity < T > postForEntity ( String url , Object request , Class < T > responseType , Object . . . uriVariables )
throws RestClientException ;
@ -246,11 +246,11 @@ public interface RestOperations {
@@ -246,11 +246,11 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @param uriVariables the variables to expand the template
* @return the converted object
* @see HttpEntity
* @since 3 . 0 . 2
* @see HttpEntity
* /
< T > ResponseEntity < T > postForEntity ( String url , Object request , Class < T > responseType , Map < String , ? > uriVariables )
throws RestClientException ;
@ -261,10 +261,10 @@ public interface RestOperations {
@@ -261,10 +261,10 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be POSTed , may be { @code null }
* @param request the Object to be POSTed ( may be { @code null } )
* @return the converted object
* @see HttpEntity
* @since 3 . 0 . 2
* @see HttpEntity
* /
< T > ResponseEntity < T > postForEntity ( URI url , Object request , Class < T > responseType ) throws RestClientException ;
@ -277,7 +277,7 @@ public interface RestOperations {
@@ -277,7 +277,7 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be PUT , may be { @code null }
* @param request the Object to be PUT ( may be { @code null } )
* @param uriVariables the variables to expand the template
* @see HttpEntity
* /
@ -289,7 +289,7 @@ public interface RestOperations {
@@ -289,7 +289,7 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be PUT , may be { @code null }
* @param request the Object to be PUT ( may be { @code null } )
* @param uriVariables the variables to expand the template
* @see HttpEntity
* /
@ -300,12 +300,64 @@ public interface RestOperations {
@@ -300,12 +300,64 @@ public interface RestOperations {
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be PUT , may be { @code null }
* @param request the Object to be PUT ( may be { @code null } )
* @see HttpEntity
* /
void put ( URI url , Object request ) throws RestClientException ;
// PATCH
/ * *
* Update a resource by PATCHing the given object to the URI template ,
* and returns the representation found in the response .
* < p > URI Template variables are expanded using the given URI variables , if any .
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be PATCHed ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand the template
* @return the converted object
* @since 4 . 3 . 5
* @see HttpEntity
* /
< T > T patchForObject ( String url , Object request , Class < T > responseType , Object . . . uriVariables )
throws RestClientException ;
/ * *
* Update a resource by PATCHing the given object to the URI template ,
* and returns the representation found in the response .
* < p > URI Template variables are expanded using the given map .
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be PATCHed ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand the template
* @return the converted object
* @since 4 . 3 . 5
* @see HttpEntity
* /
< T > T patchForObject ( String url , Object request , Class < T > responseType , Map < String , ? > uriVariables )
throws RestClientException ;
/ * *
* Update a resource by PATCHing the given object to the URL ,
* and returns the representation found in the response .
* < p > The { @code request } parameter can be a { @link HttpEntity } in order to
* add additional HTTP headers to the request .
* @param url the URL
* @param request the Object to be PATCHed ( may be { @code null } )
* @param responseType the type of the return value
* @return the converted object
* @since 4 . 3 . 5
* @see HttpEntity
* /
< T > T patchForObject ( URI url , Object request , Class < T > responseType ) throws RestClientException ;
// DELETE
/ * *
@ -368,7 +420,8 @@ public interface RestOperations {
@@ -368,7 +420,8 @@ public interface RestOperations {
* < p > URI Template variables are expanded using the given URI variables , if any .
* @param url the URL
* @param method the HTTP method ( GET , POST , etc )
* @param requestEntity the entity ( headers and / or body ) to write to the request , may be { @code null }
* @param requestEntity the entity ( headers and / or body ) to write to the request
* may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand in the template
* @return the response as entity
@ -383,7 +436,8 @@ public interface RestOperations {
@@ -383,7 +436,8 @@ public interface RestOperations {
* < p > URI Template variables are expanded using the given URI variables , if any .
* @param url the URL
* @param method the HTTP method ( GET , POST , etc )
* @param requestEntity the entity ( headers and / or body ) to write to the request , may be { @code null }
* @param requestEntity the entity ( headers and / or body ) to write to the request
* ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand in the template
* @return the response as entity
@ -397,7 +451,8 @@ public interface RestOperations {
@@ -397,7 +451,8 @@ public interface RestOperations {
* returns the response as { @link ResponseEntity } .
* @param url the URL
* @param method the HTTP method ( GET , POST , etc )
* @param requestEntity the entity ( headers and / or body ) to write to the request , may be { @code null }
* @param requestEntity the entity ( headers and / or body ) to write to the request
* ( may be { @code null } )
* @param responseType the type of the return value
* @return the response as entity
* @since 3 . 0 . 2
@ -416,7 +471,7 @@ public interface RestOperations {
@@ -416,7 +471,7 @@ public interface RestOperations {
* @param url the URL
* @param method the HTTP method ( GET , POST , etc )
* @param requestEntity the entity ( headers and / or body ) to write to the
* request , may be { @code null }
* request ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand in the template
* @return the response as entity
@ -435,7 +490,8 @@ public interface RestOperations {
@@ -435,7 +490,8 @@ public interface RestOperations {
* < / pre >
* @param url the URL
* @param method the HTTP method ( GET , POST , etc )
* @param requestEntity the entity ( headers and / or body ) to write to the request , may be { @code null }
* @param requestEntity the entity ( headers and / or body ) to write to the request
* ( may be { @code null } )
* @param responseType the type of the return value
* @param uriVariables the variables to expand in the template
* @return the response as entity
@ -454,7 +510,8 @@ public interface RestOperations {
@@ -454,7 +510,8 @@ public interface RestOperations {
* < / pre >
* @param url the URL
* @param method the HTTP method ( GET , POST , etc )
* @param requestEntity the entity ( headers and / or body ) to write to the request , may be { @code null }
* @param requestEntity the entity ( headers and / or body ) to write to the request
* ( may be { @code null } )
* @param responseType the type of the return value
* @return the response as entity
* @since 3 . 2