Specify explicitly Kotlin extensions return type

The main purpose is to specify nullability.
This commit is contained in:
Sebastien Deleuze
2017-03-30 12:20:56 +02:00
parent cd8c365a0d
commit e2fd398bad
12 changed files with 81 additions and 79 deletions

View File

@@ -3,6 +3,7 @@ package org.springframework.web.client
import org.springframework.http.HttpEntity
import org.springframework.http.HttpMethod
import org.springframework.http.RequestEntity
import org.springframework.http.ResponseEntity
import java.net.URI
@@ -14,7 +15,7 @@ import java.net.URI
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.getForObject(url: String, vararg uriVariables: Any) =
inline fun <reified T: Any> RestOperations.getForObject(url: String, vararg uriVariables: Any): T =
getForObject(url, T::class.java, *uriVariables)
/**
@@ -25,7 +26,7 @@ inline fun <reified T: Any> RestOperations.getForObject(url: String, vararg uriV
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.getForObject(url: String, uriVariables: Map<String, Any?>) =
inline fun <reified T: Any> RestOperations.getForObject(url: String, uriVariables: Map<String, Any?>): T =
getForObject(url, T::class.java, uriVariables)
/**
@@ -36,7 +37,7 @@ inline fun <reified T: Any> RestOperations.getForObject(url: String, uriVariable
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.getForObject(url: URI) =
inline fun <reified T: Any> RestOperations.getForObject(url: URI): T =
getForObject(url, T::class.java)
/**
@@ -47,7 +48,7 @@ inline fun <reified T: Any> RestOperations.getForObject(url: URI) =
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.getForEntity(url: String, vararg uriVariables: Any) =
inline fun <reified T: Any> RestOperations.getForEntity(url: String, vararg uriVariables: Any): ResponseEntity<T> =
getForEntity(url, T::class.java, *uriVariables)
/**
@@ -58,7 +59,7 @@ inline fun <reified T: Any> RestOperations.getForEntity(url: String, vararg uriV
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.postForObject(url: String, request: Any, vararg uriVariables: Any) =
inline fun <reified T: Any> RestOperations.postForObject(url: String, request: Any, vararg uriVariables: Any): T =
postForObject(url, request, T::class.java, *uriVariables)
/**
@@ -69,7 +70,7 @@ inline fun <reified T: Any> RestOperations.postForObject(url: String, request: A
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.postForObject(url: String, request: Any, uriVariables: Map<String, *>) =
inline fun <reified T: Any> RestOperations.postForObject(url: String, request: Any, uriVariables: Map<String, *>): T =
postForObject(url, request, T::class.java, uriVariables)
/**
@@ -78,7 +79,7 @@ inline fun <reified T: Any> RestOperations.postForObject(url: String, request: A
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.postForObject(url: URI, request: Any) =
inline fun <reified T: Any> RestOperations.postForObject(url: URI, request: Any): T =
postForObject(url, request, T::class.java)
/**
@@ -89,7 +90,7 @@ inline fun <reified T: Any> RestOperations.postForObject(url: URI, request: Any)
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.postForEntity(url: String, request: Any, vararg uriVariables: Any) =
inline fun <reified T: Any> RestOperations.postForEntity(url: String, request: Any, vararg uriVariables: Any): ResponseEntity<T> =
postForEntity(url, request, T::class.java, *uriVariables)
/**
@@ -100,7 +101,7 @@ inline fun <reified T: Any> RestOperations.postForEntity(url: String, request: A
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.postForEntity(url: String, request: Any, uriVariables: Map<String, *>) =
inline fun <reified T: Any> RestOperations.postForEntity(url: String, request: Any, uriVariables: Map<String, *>): ResponseEntity<T> =
postForEntity(url, request, T::class.java, uriVariables)
/**
@@ -111,7 +112,7 @@ inline fun <reified T: Any> RestOperations.postForEntity(url: String, request: A
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.postForEntity(url: URI, request: Any) =
inline fun <reified T: Any> RestOperations.postForEntity(url: URI, request: Any): ResponseEntity<T> =
postForEntity(url, request, T::class.java)
/**
@@ -122,7 +123,7 @@ inline fun <reified T: Any> RestOperations.postForEntity(url: URI, request: Any)
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.exchange(url: String, method: HttpMethod, requestEntity: HttpEntity<*>, vararg uriVariables: Any) =
inline fun <reified T: Any> RestOperations.exchange(url: String, method: HttpMethod, requestEntity: HttpEntity<*>, vararg uriVariables: Any): ResponseEntity<T> =
exchange(url, method, requestEntity, T::class.java, *uriVariables)
/**
@@ -133,7 +134,7 @@ inline fun <reified T: Any> RestOperations.exchange(url: String, method: HttpMet
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.exchange(url: String, method: HttpMethod, requestEntity: HttpEntity<*>, uriVariables: Map<String, *>) =
inline fun <reified T: Any> RestOperations.exchange(url: String, method: HttpMethod, requestEntity: HttpEntity<*>, uriVariables: Map<String, *>): ResponseEntity<T> =
exchange(url, method, requestEntity, T::class.java, uriVariables)
/**
@@ -144,7 +145,7 @@ inline fun <reified T: Any> RestOperations.exchange(url: String, method: HttpMet
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.exchange(url: URI, method: HttpMethod, requestEntity: HttpEntity<*>) =
inline fun <reified T: Any> RestOperations.exchange(url: URI, method: HttpMethod, requestEntity: HttpEntity<*>): ResponseEntity<T> =
exchange(url, method, requestEntity, T::class.java)
/**
@@ -155,5 +156,5 @@ inline fun <reified T: Any> RestOperations.exchange(url: URI, method: HttpMethod
* @since 5.0
*/
@Throws(RestClientException::class)
inline fun <reified T: Any> RestOperations.exchange(requestEntity: RequestEntity<*>) =
inline fun <reified T: Any> RestOperations.exchange(requestEntity: RequestEntity<*>): ResponseEntity<T> =
exchange(requestEntity, T::class.java)