Class HttpHeaderTokenReader

  • All Implemented Interfaces:
    io.micronaut.core.order.Ordered, TokenReader
    Direct Known Subclasses:
    BasicAuthTokenReader, BearerTokenReader

    public abstract class HttpHeaderTokenReader
    extends java.lang.Object
    implements TokenReader
    Reads a token from an HTTP request and removes prefix from HTTP Header Value.
    Since:
    1.0
    Author:
    Sergio del Amo
    • Field Summary

      • Fields inherited from interface io.micronaut.core.order.Ordered

        HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.util.Optional<java.lang.String> extractTokenFromAuthorization​(java.lang.String authorization)  
      java.util.Optional<java.lang.String> findToken​(io.micronaut.http.HttpRequest<?> request)
      Search for a JWT token in a HTTP request.
      protected abstract java.lang.String getHeaderName()  
      protected abstract java.lang.String getPrefix()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface io.micronaut.core.order.Ordered

        getOrder
    • Constructor Detail

      • HttpHeaderTokenReader

        public HttpHeaderTokenReader()
    • Method Detail

      • getPrefix

        protected abstract java.lang.String getPrefix()
        Returns:
        a Prefix before the token in the header value. E.g. Basic
      • getHeaderName

        protected abstract java.lang.String getHeaderName()
        Returns:
        an HTTP Header name. e.g. Authorization
      • findToken

        public java.util.Optional<java.lang.String> findToken​(io.micronaut.http.HttpRequest<?> request)
        Search for a JWT token in a HTTP request.
        Specified by:
        findToken in interface TokenReader
        Parameters:
        request - The request to look for the token in
        Returns:
        if the JWT token is found it is returned, empty if not
      • extractTokenFromAuthorization

        protected java.util.Optional<java.lang.String> extractTokenFromAuthorization​(java.lang.String authorization)
        Parameters:
        authorization - Authorization header value
        Returns:
        If prefix is 'Bearer' for 'Bearer XXX' it returns 'XXX'