Package pl.gsmservice.gateway.utils
Class SessionManager<T extends SessionManager.HasSessionKey>
- java.lang.Object
-
- pl.gsmservice.gateway.utils.SessionManager<T>
-
public final class SessionManager<T extends SessionManager.HasSessionKey> extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceSessionManager.HasSessionKeystatic classSessionManager.Session<T>
-
Field Summary
Fields Modifier and Type Field Description static intREFRESH_BEFORE_EXPIRY_SECONDS
-
Constructor Summary
Constructors Constructor Description SessionManager()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description SessionManager.Session<T>getSession(T credentials, java.util.Optional<java.util.List<java.lang.String>> scopes, java.util.function.Function<java.util.List<java.lang.String>,SessionManager.Session<T>> tokenProvider)static booleanhasRequiredScopes(java.util.List<java.lang.String> sessionScopes, java.util.Optional<java.util.List<java.lang.String>> requiredScopes)static booleanhasTokenExpired(java.util.Optional<java.time.OffsetDateTime> expiresAt, java.time.OffsetDateTime now)voidremove(java.lang.String sessionKey)static <T extends SessionManager.HasSessionKey>
SessionManager.Session<T>requestOAuth2Token(HTTPClient client, T credentials, java.util.List<java.lang.String> scopes, java.util.Map<java.lang.String,java.lang.String> body, java.util.Map<java.lang.String,java.lang.String> headers, java.net.URI tokenUri)static <T extends SessionManager.HasSessionKey>
booleanshouldCreateNewSession(java.util.Optional<SessionManager.Session<T>> currentSession, java.util.Optional<java.util.List<java.lang.String>> oauthScopes)
-
-
-
Field Detail
-
REFRESH_BEFORE_EXPIRY_SECONDS
public static final int REFRESH_BEFORE_EXPIRY_SECONDS
- See Also:
- Constant Field Values
-
-
Method Detail
-
getSession
public SessionManager.Session<T> getSession(T credentials, java.util.Optional<java.util.List<java.lang.String>> scopes, java.util.function.Function<java.util.List<java.lang.String>,SessionManager.Session<T>> tokenProvider)
-
shouldCreateNewSession
public static <T extends SessionManager.HasSessionKey> boolean shouldCreateNewSession(java.util.Optional<SessionManager.Session<T>> currentSession, java.util.Optional<java.util.List<java.lang.String>> oauthScopes)
-
hasTokenExpired
public static boolean hasTokenExpired(java.util.Optional<java.time.OffsetDateTime> expiresAt, java.time.OffsetDateTime now)
-
hasRequiredScopes
public static boolean hasRequiredScopes(java.util.List<java.lang.String> sessionScopes, java.util.Optional<java.util.List<java.lang.String>> requiredScopes)
-
remove
public void remove(java.lang.String sessionKey)
-
requestOAuth2Token
public static <T extends SessionManager.HasSessionKey> SessionManager.Session<T> requestOAuth2Token(HTTPClient client, T credentials, java.util.List<java.lang.String> scopes, java.util.Map<java.lang.String,java.lang.String> body, java.util.Map<java.lang.String,java.lang.String> headers, java.net.URI tokenUri)
-
-