org.apache.hc.core5.http.protocol

## Class RequestUserAgent

- java.lang.Object
- - org.apache.hc.core5.http.protocol.RequestUserAgent

- All Implemented Interfaces:
    HttpRequestInterceptor

      @Contract(threading=IMMUTABLE)
      public class RequestUserAgent
      extends Object
      implements HttpRequestInterceptor

  RequestUserAgent is responsible for adding `User-Agent` header. This interceptor is recommended for client side protocol processors.
  Since:
    4.0

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static HttpRequestInterceptor` | `INSTANCE` Singleton instance.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RequestUserAgent()`
    `RequestUserAgent(String userAgent)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `process(HttpRequest request, EntityDetails entity, HttpContext context)` Processes a request.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### INSTANCE

          public static final HttpRequestInterceptor INSTANCE

      Singleton instance.
      Since:
        5.2

  - ### Constructor Detail

    - #### RequestUserAgent

          public RequestUserAgent(String userAgent)

    - #### RequestUserAgent

          public RequestUserAgent()

  - ### Method Detail

    - #### process

          public void process(HttpRequest request,
                              EntityDetails entity,
                              HttpContext context)
                       throws HttpException,
                              IOException

      Description copied from interface: `HttpRequestInterceptor`
      Processes a request. On the client side, this step is performed before the request is sent to the server. On the server side, this step is performed on incoming messages before the message body is evaluated.
      Specified by:
        `process` in interface `HttpRequestInterceptor`
      Parameters:
        `request` - the request to process
        `entity` - the request entity details or `null` if not available
        `context` - the context for the request
      Throws:
        `HttpException` - in case of an HTTP protocol violation
        `IOException` - in case of an I/O error

Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.