Class ClientLoggingFilter

  • All Implemented Interfaces:
    javax.ws.rs.client.ClientRequestFilter, javax.ws.rs.client.ClientResponseFilter, javax.ws.rs.ext.WriterInterceptor

    @ConstrainedTo(CLIENT)
    @PreMatching
    @Priority(2147483647)
    final class ClientLoggingFilter
    extends LoggingInterceptor
    implements javax.ws.rs.client.ClientRequestFilter, javax.ws.rs.client.ClientResponseFilter
    Client filter logs requests and responses to specified logger, at required level, with entity or not.

    The filter is registered in LoggingFeature.configure(FeatureContext) and can be used on client side only. The priority is set to the minimum value, which means that filter is called as the last filter when request is sent and similarly as the first filter when the response is received, so request and response is logged as sent or as received.

    • Constructor Detail

      • ClientLoggingFilter

        public ClientLoggingFilter​(java.util.logging.Logger logger,
                                   java.util.logging.Level level,
                                   LoggingFeature.Verbosity verbosity,
                                   int maxEntitySize)
        Create a logging filter with custom logger and custom settings of entity logging.
        Parameters:
        logger - the logger to log messages to.
        level - level at which the messages will be logged.
        verbosity - verbosity of the logged messages. See LoggingFeature.Verbosity.
        maxEntitySize - maximum number of entity bytes to be logged (and buffered) - if the entity is larger, logging filter will print (and buffer in memory) only the specified number of bytes and print "...more..." string at the end. Negative values are interpreted as zero.
    • Method Detail

      • filter

        public void filter​(javax.ws.rs.client.ClientRequestContext context)
                    throws java.io.IOException
        Specified by:
        filter in interface javax.ws.rs.client.ClientRequestFilter
        Throws:
        java.io.IOException
      • filter

        public void filter​(javax.ws.rs.client.ClientRequestContext requestContext,
                           javax.ws.rs.client.ClientResponseContext responseContext)
                    throws java.io.IOException
        Specified by:
        filter in interface javax.ws.rs.client.ClientResponseFilter
        Throws:
        java.io.IOException