Skip to content

Commit f5266c7

Browse files
Steve Riesenbergsjohnr
authored andcommitted
Remove wildcard from generics in converter
Polish gh-9779
1 parent c4e53e5 commit f5266c7

File tree

4 files changed

+17
-16
lines changed

4 files changed

+17
-16
lines changed

oauth2/oauth2-core/src/main/java/org/springframework/security/oauth2/core/endpoint/DefaultMapOAuth2AccessTokenResponseConverter.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,21 +35,21 @@
3535
* @since 5.6
3636
*/
3737
public final class DefaultMapOAuth2AccessTokenResponseConverter
38-
implements Converter<Map<String, ?>, OAuth2AccessTokenResponse> {
38+
implements Converter<Map<String, Object>, OAuth2AccessTokenResponse> {
3939

4040
private static final Set<String> TOKEN_RESPONSE_PARAMETER_NAMES = new HashSet<>(
4141
Arrays.asList(OAuth2ParameterNames.ACCESS_TOKEN, OAuth2ParameterNames.EXPIRES_IN,
4242
OAuth2ParameterNames.REFRESH_TOKEN, OAuth2ParameterNames.SCOPE, OAuth2ParameterNames.TOKEN_TYPE));
4343

4444
@Override
45-
public OAuth2AccessTokenResponse convert(Map<String, ?> source) {
45+
public OAuth2AccessTokenResponse convert(Map<String, Object> source) {
4646
String accessToken = getParameterValue(source, OAuth2ParameterNames.ACCESS_TOKEN);
4747
OAuth2AccessToken.TokenType accessTokenType = getAccessTokenType(source);
4848
long expiresIn = getExpiresIn(source);
4949
Set<String> scopes = getScopes(source);
5050
String refreshToken = getParameterValue(source, OAuth2ParameterNames.REFRESH_TOKEN);
5151
Map<String, Object> additionalParameters = new LinkedHashMap<>();
52-
for (Map.Entry<String, ?> entry : source.entrySet()) {
52+
for (Map.Entry<String, Object> entry : source.entrySet()) {
5353
if (!TOKEN_RESPONSE_PARAMETER_NAMES.contains(entry.getKey())) {
5454
additionalParameters.put(entry.getKey(), entry.getValue());
5555
}
@@ -65,32 +65,32 @@ public OAuth2AccessTokenResponse convert(Map<String, ?> source) {
6565
// @formatter:on
6666
}
6767

68-
private static OAuth2AccessToken.TokenType getAccessTokenType(Map<String, ?> tokenResponseParameters) {
68+
private static OAuth2AccessToken.TokenType getAccessTokenType(Map<String, Object> tokenResponseParameters) {
6969
if (OAuth2AccessToken.TokenType.BEARER.getValue()
7070
.equalsIgnoreCase(getParameterValue(tokenResponseParameters, OAuth2ParameterNames.TOKEN_TYPE))) {
7171
return OAuth2AccessToken.TokenType.BEARER;
7272
}
7373
return null;
7474
}
7575

76-
private static long getExpiresIn(Map<String, ?> tokenResponseParameters) {
76+
private static long getExpiresIn(Map<String, Object> tokenResponseParameters) {
7777
return getParameterValue(tokenResponseParameters, OAuth2ParameterNames.EXPIRES_IN, 0L);
7878
}
7979

80-
private static Set<String> getScopes(Map<String, ?> tokenResponseParameters) {
80+
private static Set<String> getScopes(Map<String, Object> tokenResponseParameters) {
8181
if (tokenResponseParameters.containsKey(OAuth2ParameterNames.SCOPE)) {
8282
String scope = getParameterValue(tokenResponseParameters, OAuth2ParameterNames.SCOPE);
8383
return new HashSet<>(Arrays.asList(StringUtils.delimitedListToStringArray(scope, " ")));
8484
}
8585
return Collections.emptySet();
8686
}
8787

88-
private static String getParameterValue(Map<String, ?> tokenResponseParameters, String parameterName) {
88+
private static String getParameterValue(Map<String, Object> tokenResponseParameters, String parameterName) {
8989
Object obj = tokenResponseParameters.get(parameterName);
9090
return (obj != null) ? obj.toString() : null;
9191
}
9292

93-
private static long getParameterValue(Map<String, ?> tokenResponseParameters, String parameterName,
93+
private static long getParameterValue(Map<String, Object> tokenResponseParameters, String parameterName,
9494
long defaultValue) {
9595
long parameterValue = defaultValue;
9696

oauth2/oauth2-core/src/main/java/org/springframework/security/oauth2/core/endpoint/MapOAuth2AccessTokenResponseConverter.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
package org.springframework.security.oauth2.core.endpoint;
1818

19+
import java.util.HashMap;
1920
import java.util.Map;
2021

2122
import org.springframework.core.convert.converter.Converter;
@@ -33,11 +34,11 @@
3334
public final class MapOAuth2AccessTokenResponseConverter
3435
implements Converter<Map<String, String>, OAuth2AccessTokenResponse> {
3536

36-
private final Converter<Map<String, ?>, OAuth2AccessTokenResponse> delegate = new DefaultMapOAuth2AccessTokenResponseConverter();
37+
private final Converter<Map<String, Object>, OAuth2AccessTokenResponse> delegate = new DefaultMapOAuth2AccessTokenResponseConverter();
3738

3839
@Override
3940
public OAuth2AccessTokenResponse convert(Map<String, String> tokenResponseParameters) {
40-
return this.delegate.convert(tokenResponseParameters);
41+
return this.delegate.convert(new HashMap<>(tokenResponseParameters));
4142
}
4243

4344
}

oauth2/oauth2-core/src/main/java/org/springframework/security/oauth2/core/http/converter/OAuth2AccessTokenResponseHttpMessageConverter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public class OAuth2AccessTokenResponseHttpMessageConverter
6464
@Deprecated
6565
protected Converter<Map<String, String>, OAuth2AccessTokenResponse> tokenResponseConverter = new MapOAuth2AccessTokenResponseConverter();
6666

67-
private Converter<Map<String, ?>, OAuth2AccessTokenResponse> accessTokenResponseConverter = new DefaultMapOAuth2AccessTokenResponseConverter();
67+
private Converter<Map<String, Object>, OAuth2AccessTokenResponse> accessTokenResponseConverter = new DefaultMapOAuth2AccessTokenResponseConverter();
6868

6969
/**
7070
* @deprecated This field should no longer be used
@@ -152,7 +152,7 @@ public final void setTokenResponseConverter(
152152
* @since 5.6
153153
*/
154154
public final void setAccessTokenResponseConverter(
155-
Converter<Map<String, ?>, OAuth2AccessTokenResponse> accessTokenResponseConverter) {
155+
Converter<Map<String, Object>, OAuth2AccessTokenResponse> accessTokenResponseConverter) {
156156
Assert.notNull(accessTokenResponseConverter, "accessTokenResponseConverter cannot be null");
157157
this.accessTokenResponseConverter = accessTokenResponseConverter;
158158
}

oauth2/oauth2-core/src/test/java/org/springframework/security/oauth2/core/endpoint/DefaultMapOAuth2AccessTokenResponseConverterTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
*/
3838
public class DefaultMapOAuth2AccessTokenResponseConverterTests {
3939

40-
private Converter<Map<String, ?>, OAuth2AccessTokenResponse> messageConverter;
40+
private Converter<Map<String, Object>, OAuth2AccessTokenResponse> messageConverter;
4141

4242
@BeforeEach
4343
public void setup() {
@@ -46,7 +46,7 @@ public void setup() {
4646

4747
@Test
4848
public void shouldConvertFull() {
49-
Map<String, String> map = new HashMap<>();
49+
Map<String, Object> map = new HashMap<>();
5050
map.put("access_token", "access-token-1234");
5151
map.put("token_type", "bearer");
5252
map.put("expires_in", "3600");
@@ -78,7 +78,7 @@ public void shouldConvertFull() {
7878

7979
@Test
8080
public void shouldConvertMinimal() {
81-
Map<String, String> map = new HashMap<>();
81+
Map<String, Object> map = new HashMap<>();
8282
map.put("access_token", "access-token-1234");
8383
map.put("token_type", "bearer");
8484
OAuth2AccessTokenResponse converted = this.messageConverter.convert(map);
@@ -100,7 +100,7 @@ public void shouldConvertMinimal() {
100100

101101
@Test
102102
public void shouldConvertWithUnsupportedExpiresIn() {
103-
Map<String, String> map = new HashMap<>();
103+
Map<String, Object> map = new HashMap<>();
104104
map.put("access_token", "access-token-1234");
105105
map.put("token_type", "bearer");
106106
map.put("expires_in", "2100-01-01-abc");

0 commit comments

Comments
 (0)