Record Class PkceFlow.TokenResponse

java.lang.Object
java.lang.Record
com.tnsai.mcp.auth.PkceFlow.TokenResponse
Record Components:
accessToken - the access token
refreshToken - the refresh token, may be null
tokenType - the token type (typically "Bearer")
expiresIn - token lifetime in seconds
scope - the granted scope, may be null
obtainedAt - the instant when this token was obtained
Enclosing class:
PkceFlow

public static record PkceFlow.TokenResponse(String accessToken, String refreshToken, String tokenType, long expiresIn, String scope, Instant obtainedAt) extends Record
Token response from the authorization server.
  • Constructor Details

    • TokenResponse

      public TokenResponse(String accessToken, String refreshToken, String tokenType, long expiresIn, String scope, Instant obtainedAt)
      Creates an instance of a TokenResponse record class.
      Parameters:
      accessToken - the value for the accessToken record component
      refreshToken - the value for the refreshToken record component
      tokenType - the value for the tokenType record component
      expiresIn - the value for the expiresIn record component
      scope - the value for the scope record component
      obtainedAt - the value for the obtainedAt record component
  • Method Details

    • isExpired

      public boolean isExpired()
      Checks if this token has expired.
      Returns:
      true if the token has expired
    • isExpiringSoon

      public boolean isExpiringSoon(Duration threshold)
      Checks if this token is expiring soon, within the given threshold.
      Parameters:
      threshold - the time before expiry to consider "expiring soon"
      Returns:
      true if the token will expire within the threshold
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with '=='.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • accessToken

      public String accessToken()
      Returns the value of the accessToken record component.
      Returns:
      the value of the accessToken record component
    • refreshToken

      public String refreshToken()
      Returns the value of the refreshToken record component.
      Returns:
      the value of the refreshToken record component
    • tokenType

      public String tokenType()
      Returns the value of the tokenType record component.
      Returns:
      the value of the tokenType record component
    • expiresIn

      public long expiresIn()
      Returns the value of the expiresIn record component.
      Returns:
      the value of the expiresIn record component
    • scope

      public String scope()
      Returns the value of the scope record component.
      Returns:
      the value of the scope record component
    • obtainedAt

      public Instant obtainedAt()
      Returns the value of the obtainedAt record component.
      Returns:
      the value of the obtainedAt record component