Class SessionManager<T extends SessionManager.HasSessionKey>

    • Field Detail

      • REFRESH_BEFORE_EXPIRY_SECONDS

        public static final int REFRESH_BEFORE_EXPIRY_SECONDS
        See Also:
        Constant Field Values
    • Constructor Detail

      • SessionManager

        public SessionManager()
    • 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)
      • 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.HasSessionKeySessionManager.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)