diff --git a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/Context.java b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/Context.java index 9ae5e820..2592935b 100644 --- a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/Context.java +++ b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/Context.java @@ -15,8 +15,6 @@ */ package org.springframework.security.oauth2.core.context; -import java.util.Map; - import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -40,8 +38,4 @@ public interface Context { boolean hasKey(Object key); - static Context of(Map context) { - return new DefaultContext(context); - } - } diff --git a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/DefaultContext.java b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/DefaultContext.java deleted file mode 100644 index 7a69a5e4..00000000 --- a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/core/context/DefaultContext.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2020-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.security.oauth2.core.context; - -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -import org.springframework.lang.Nullable; -import org.springframework.util.Assert; - -/** - * @author Joe Grandja - * @since 0.1.0 - */ -final class DefaultContext implements Context { - private final Map context; - - DefaultContext(Map context) { - Assert.notNull(context, "context cannot be null"); - this.context = Collections.unmodifiableMap(new HashMap<>(context)); - } - - @SuppressWarnings("unchecked") - @Override - @Nullable - public V get(Object key) { - return hasKey(key) ? (V) this.context.get(key) : null; - } - - @Override - public boolean hasKey(Object key) { - Assert.notNull(key, "key cannot be null"); - return this.context.containsKey(key); - } - -} diff --git a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JwtEncodingContext.java b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JwtEncodingContext.java index 79f4774b..edc1f815 100644 --- a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JwtEncodingContext.java +++ b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JwtEncodingContext.java @@ -15,11 +15,12 @@ */ package org.springframework.security.oauth2.server.authorization; +import java.util.Collections; +import java.util.HashMap; import java.util.Map; import java.util.function.Consumer; import org.springframework.lang.Nullable; -import org.springframework.security.oauth2.core.context.Context; import org.springframework.security.oauth2.jwt.JoseHeader; import org.springframework.security.oauth2.jwt.JwtClaimsSet; import org.springframework.util.Assert; @@ -32,21 +33,23 @@ import org.springframework.util.Assert; * @see JwtClaimsSet.Builder */ public final class JwtEncodingContext implements OAuth2TokenContext { - private final Context context; + private final Map context; private JwtEncodingContext(Map context) { - this.context = Context.of(context); + this.context = Collections.unmodifiableMap(new HashMap<>(context)); } + @SuppressWarnings("unchecked") @Nullable @Override public V get(Object key) { - return this.context.get(key); + return hasKey(key) ? (V) this.context.get(key) : null; } @Override public boolean hasKey(Object key) { - return this.context.hasKey(key); + Assert.notNull(key, "key cannot be null"); + return this.context.containsKey(key); } public JoseHeader.Builder getHeaders() {