Przeglądaj źródła

Use OAuth2Token in OAuth2Authorization

Closes gh-364
Joe Grandja 4 lat temu
rodzic
commit
79fd004346

+ 16 - 16
oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/OAuth2Authorization.java

@@ -25,12 +25,12 @@ import java.util.UUID;
 import java.util.function.Consumer;
 import java.util.function.Consumer;
 
 
 import org.springframework.lang.Nullable;
 import org.springframework.lang.Nullable;
-import org.springframework.security.oauth2.core.Version;
-import org.springframework.security.oauth2.core.AbstractOAuth2Token;
 import org.springframework.security.oauth2.core.AuthorizationGrantType;
 import org.springframework.security.oauth2.core.AuthorizationGrantType;
 import org.springframework.security.oauth2.core.OAuth2AccessToken;
 import org.springframework.security.oauth2.core.OAuth2AccessToken;
 import org.springframework.security.oauth2.core.OAuth2RefreshToken;
 import org.springframework.security.oauth2.core.OAuth2RefreshToken;
 import org.springframework.security.oauth2.core.OAuth2RefreshToken2;
 import org.springframework.security.oauth2.core.OAuth2RefreshToken2;
+import org.springframework.security.oauth2.core.OAuth2Token;
+import org.springframework.security.oauth2.core.Version;
 import org.springframework.security.oauth2.server.authorization.client.RegisteredClient;
 import org.springframework.security.oauth2.server.authorization.client.RegisteredClient;
 import org.springframework.util.Assert;
 import org.springframework.util.Assert;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.CollectionUtils;
@@ -46,7 +46,7 @@ import org.springframework.util.StringUtils;
  * @since 0.0.1
  * @since 0.0.1
  * @see RegisteredClient
  * @see RegisteredClient
  * @see AuthorizationGrantType
  * @see AuthorizationGrantType
- * @see AbstractOAuth2Token
+ * @see OAuth2Token
  * @see OAuth2AccessToken
  * @see OAuth2AccessToken
  * @see OAuth2RefreshToken
  * @see OAuth2RefreshToken
  */
  */
@@ -64,7 +64,7 @@ public class OAuth2Authorization implements Serializable {
 	private String registeredClientId;
 	private String registeredClientId;
 	private String principalName;
 	private String principalName;
 	private AuthorizationGrantType authorizationGrantType;
 	private AuthorizationGrantType authorizationGrantType;
-	private Map<Class<? extends AbstractOAuth2Token>, Token<?>> tokens;
+	private Map<Class<? extends OAuth2Token>, Token<?>> tokens;
 	private Map<String, Object> attributes;
 	private Map<String, Object> attributes;
 
 
 	protected OAuth2Authorization() {
 	protected OAuth2Authorization() {
@@ -134,7 +134,7 @@ public class OAuth2Authorization implements Serializable {
 	 */
 	 */
 	@Nullable
 	@Nullable
 	@SuppressWarnings("unchecked")
 	@SuppressWarnings("unchecked")
-	public <T extends AbstractOAuth2Token> Token<T> getToken(Class<T> tokenType) {
+	public <T extends OAuth2Token> Token<T> getToken(Class<T> tokenType) {
 		Assert.notNull(tokenType, "tokenType cannot be null");
 		Assert.notNull(tokenType, "tokenType cannot be null");
 		Token<?> token = this.tokens.get(tokenType);
 		Token<?> token = this.tokens.get(tokenType);
 		return token != null ? (Token<T>) token : null;
 		return token != null ? (Token<T>) token : null;
@@ -149,7 +149,7 @@ public class OAuth2Authorization implements Serializable {
 	 */
 	 */
 	@Nullable
 	@Nullable
 	@SuppressWarnings("unchecked")
 	@SuppressWarnings("unchecked")
-	public <T extends AbstractOAuth2Token> Token<T> getToken(String tokenValue) {
+	public <T extends OAuth2Token> Token<T> getToken(String tokenValue) {
 		Assert.hasText(tokenValue, "tokenValue cannot be empty");
 		Assert.hasText(tokenValue, "tokenValue cannot be empty");
 		Token<?> token = this.tokens.values().stream()
 		Token<?> token = this.tokens.values().stream()
 				.filter(t -> t.getToken().getTokenValue().equals(tokenValue))
 				.filter(t -> t.getToken().getTokenValue().equals(tokenValue))
@@ -237,7 +237,7 @@ public class OAuth2Authorization implements Serializable {
 	 * @author Joe Grandja
 	 * @author Joe Grandja
 	 * @since 0.1.0
 	 * @since 0.1.0
 	 */
 	 */
-	public static class Token<T extends AbstractOAuth2Token> implements Serializable {
+	public static class Token<T extends OAuth2Token> implements Serializable {
 		private static final long serialVersionUID = Version.SERIAL_VERSION_UID;
 		private static final long serialVersionUID = Version.SERIAL_VERSION_UID;
 		protected static final String TOKEN_METADATA_BASE = "metadata.token.";
 		protected static final String TOKEN_METADATA_BASE = "metadata.token.";
 
 
@@ -264,9 +264,9 @@ public class OAuth2Authorization implements Serializable {
 		}
 		}
 
 
 		/**
 		/**
-		 * Returns the token of type {@link AbstractOAuth2Token}.
+		 * Returns the token of type {@link OAuth2Token}.
 		 *
 		 *
-		 * @return the token of type {@link AbstractOAuth2Token}
+		 * @return the token of type {@link OAuth2Token}
 		 */
 		 */
 		public T getToken() {
 		public T getToken() {
 			return this.token;
 			return this.token;
@@ -380,7 +380,7 @@ public class OAuth2Authorization implements Serializable {
 		private final String registeredClientId;
 		private final String registeredClientId;
 		private String principalName;
 		private String principalName;
 		private AuthorizationGrantType authorizationGrantType;
 		private AuthorizationGrantType authorizationGrantType;
-		private Map<Class<? extends AbstractOAuth2Token>, Token<?>> tokens = new HashMap<>();
+		private Map<Class<? extends OAuth2Token>, Token<?>> tokens = new HashMap<>();
 		private final Map<String, Object> attributes = new HashMap<>();
 		private final Map<String, Object> attributes = new HashMap<>();
 
 
 		protected Builder(String registeredClientId) {
 		protected Builder(String registeredClientId) {
@@ -441,25 +441,25 @@ public class OAuth2Authorization implements Serializable {
 		}
 		}
 
 
 		/**
 		/**
-		 * Sets the {@link AbstractOAuth2Token token}.
+		 * Sets the {@link OAuth2Token token}.
 		 *
 		 *
 		 * @param token the token
 		 * @param token the token
 		 * @param <T> the type of the token
 		 * @param <T> the type of the token
 		 * @return the {@link Builder}
 		 * @return the {@link Builder}
 		 */
 		 */
-		public <T extends AbstractOAuth2Token> Builder token(T token) {
+		public <T extends OAuth2Token> Builder token(T token) {
 			return token(token, (metadata) -> {});
 			return token(token, (metadata) -> {});
 		}
 		}
 
 
 		/**
 		/**
-		 * Sets the {@link AbstractOAuth2Token token} and associated metadata.
+		 * Sets the {@link OAuth2Token token} and associated metadata.
 		 *
 		 *
 		 * @param token the token
 		 * @param token the token
 		 * @param metadataConsumer a {@code Consumer} of the metadata {@code Map}
 		 * @param metadataConsumer a {@code Consumer} of the metadata {@code Map}
 		 * @param <T> the type of the token
 		 * @param <T> the type of the token
 		 * @return the {@link Builder}
 		 * @return the {@link Builder}
 		 */
 		 */
-		public <T extends AbstractOAuth2Token> Builder token(T token,
+		public <T extends OAuth2Token> Builder token(T token,
 				Consumer<Map<String, Object>> metadataConsumer) {
 				Consumer<Map<String, Object>> metadataConsumer) {
 
 
 			Assert.notNull(token, "token cannot be null");
 			Assert.notNull(token, "token cannot be null");
@@ -469,7 +469,7 @@ public class OAuth2Authorization implements Serializable {
 				metadata.putAll(existingToken.getMetadata());
 				metadata.putAll(existingToken.getMetadata());
 			}
 			}
 			metadataConsumer.accept(metadata);
 			metadataConsumer.accept(metadata);
-			Class<? extends AbstractOAuth2Token> tokenClass = token.getClass();
+			Class<? extends OAuth2Token> tokenClass = token.getClass();
 			if (tokenClass.equals(OAuth2RefreshToken2.class)) {
 			if (tokenClass.equals(OAuth2RefreshToken2.class)) {
 				tokenClass = OAuth2RefreshToken.class;
 				tokenClass = OAuth2RefreshToken.class;
 			}
 			}
@@ -477,7 +477,7 @@ public class OAuth2Authorization implements Serializable {
 			return this;
 			return this;
 		}
 		}
 
 
-		protected final Builder tokens(Map<Class<? extends AbstractOAuth2Token>, Token<?>> tokens) {
+		protected final Builder tokens(Map<Class<? extends OAuth2Token>, Token<?>> tokens) {
 			this.tokens = new HashMap<>(tokens);
 			this.tokens = new HashMap<>(tokens);
 			return this;
 			return this;
 		}
 		}