From 65dc2afe9d54c785333b34559de3f2a846a972d4 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Thu, 2 Dec 2021 14:49:46 +0100 Subject: [PATCH] Polish "Add Kotlin extensions for Cache and CacheManager" See gh-23927 --- .../springframework/cache/CacheExtensions.kt | 8 ++++---- .../cache/CacheManagerExtensions.kt | 18 +++++++++++++++++- .../cache/CacheExtensionsTest.kt | 19 ++++++++++++++++++- .../cache/CacheManagerExtensionsTest.kt | 19 ++++++++++++++++++- 4 files changed, 57 insertions(+), 7 deletions(-) diff --git a/spring-context/src/main/kotlin/org/springframework/cache/CacheExtensions.kt b/spring-context/src/main/kotlin/org/springframework/cache/CacheExtensions.kt index fe0f3d5deb..df6a4737bd 100644 --- a/spring-context/src/main/kotlin/org/springframework/cache/CacheExtensions.kt +++ b/spring-context/src/main/kotlin/org/springframework/cache/CacheExtensions.kt @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2021 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. @@ -21,7 +21,7 @@ package org.springframework.cache * Extension for [Cache.get] providing a `get()` variant. * * @author Mikhael Sokolov - * @since 5.2 + * @since 6.0 */ @Suppress("EXTENSION_SHADOWED_BY_MEMBER") inline fun Cache.get(key: Any): T? = get(key, T::class.java) @@ -30,7 +30,7 @@ inline fun Cache.get(key: Any): T? = get(key, T::class.java) * Extension for [Cache.get] providing a `foo[key]` variant. * * @author Mikhael Sokolov - * @since 5.2 + * @since 6.0 */ @Suppress("EXTENSION_SHADOWED_BY_MEMBER") operator fun Cache.get(key: Any): Cache.ValueWrapper? = get(key) @@ -39,6 +39,6 @@ operator fun Cache.get(key: Any): Cache.ValueWrapper? = get(key) * Extension for [Cache.put] providing a `foo[key]` variant. * * @author Mikhael Sokolov - * @since 5.2 + * @since 6.0 */ operator fun Cache.set(key: Any, value: Any?) = put(key, value) \ No newline at end of file diff --git a/spring-context/src/main/kotlin/org/springframework/cache/CacheManagerExtensions.kt b/spring-context/src/main/kotlin/org/springframework/cache/CacheManagerExtensions.kt index bc26566370..afa7d43124 100644 --- a/spring-context/src/main/kotlin/org/springframework/cache/CacheManagerExtensions.kt +++ b/spring-context/src/main/kotlin/org/springframework/cache/CacheManagerExtensions.kt @@ -1,9 +1,25 @@ +/* + * Copyright 2002-2021 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 + * + * https://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, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.springframework.cache /** * Extension for [CacheManager.getCache(name)] providing a `cm[name]` variant. * * @author Mikhael Sokolov - * @since 5.2 + * @since 6.0 */ operator fun CacheManager.get(name: String): Cache? = getCache(name) \ No newline at end of file diff --git a/spring-context/src/test/kotlin/org/springframework/cache/CacheExtensionsTest.kt b/spring-context/src/test/kotlin/org/springframework/cache/CacheExtensionsTest.kt index 28d52f92f3..70f98c38e2 100644 --- a/spring-context/src/test/kotlin/org/springframework/cache/CacheExtensionsTest.kt +++ b/spring-context/src/test/kotlin/org/springframework/cache/CacheExtensionsTest.kt @@ -1,3 +1,19 @@ +/* + * Copyright 2002-2021 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 + * + * https://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, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.springframework.cache import org.junit.jupiter.api.Assertions.assertEquals @@ -27,5 +43,6 @@ class CacheExtensionsTest { assertEquals("v", cache.get("k", String::class.java)) } - private fun createCache(cacheName: String = "c"): Cache = ConcurrentMapCacheManager(cacheName).getCache(cacheName)!! + private fun createCache(cacheName: String = "c"): Cache = + ConcurrentMapCacheManager(cacheName).getCache(cacheName)!! } \ No newline at end of file diff --git a/spring-context/src/test/kotlin/org/springframework/cache/CacheManagerExtensionsTest.kt b/spring-context/src/test/kotlin/org/springframework/cache/CacheManagerExtensionsTest.kt index 43765e407a..95bd32e384 100644 --- a/spring-context/src/test/kotlin/org/springframework/cache/CacheManagerExtensionsTest.kt +++ b/spring-context/src/test/kotlin/org/springframework/cache/CacheManagerExtensionsTest.kt @@ -1,3 +1,19 @@ +/* + * Copyright 2002-2021 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 + * + * https://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, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.springframework.cache import org.junit.jupiter.api.Assertions.assertNotEquals @@ -12,5 +28,6 @@ class CacheManagerExtensionsTest { assertNotEquals(null, cm["c"]) } - private fun createCacheManager(cacheName: String = "c"): CacheManager = ConcurrentMapCacheManager(cacheName) + private fun createCacheManager(cacheName: String = "c"): CacheManager = + ConcurrentMapCacheManager(cacheName) } \ No newline at end of file