Class HttpHeaders

java.lang.Object
com.stripe.net.HttpHeaders

public class HttpHeaders extends Object
A read-only view of a set of HTTP headers.

This class mimics the java.net.http.HttpHeaders added in Java 11.

  • Method Details

    • of

      public static HttpHeaders of(Map<String,List<String>> headerMap)
      Returns an HttpHeaders instance initialized from the given map.
      Parameters:
      headerMap - the map containing the header names and values
      Returns:
      an HttpHeaders instance containing the given headers
      Throws:
      NullPointerException - if headerMap is null
    • withAdditionalHeader

      public HttpHeaders withAdditionalHeader(String name, String value)
      Returns a new HttpHeaders instance containing the headers of the current instance plus the provided header.
      Parameters:
      name - the name of the header to add
      value - the value of the header to add
      Returns:
      the new HttpHeaders instance
      Throws:
      NullPointerException - if name or value is null
    • withAdditionalHeader

      public HttpHeaders withAdditionalHeader(String name, List<String> values)
      Returns a new HttpHeaders instance containing the headers of the current instance plus the provided header.
      Parameters:
      name - the name of the header to add
      values - the values of the header to add
      Returns:
      the new HttpHeaders instance
      Throws:
      NullPointerException - if name or values is null
    • withAdditionalHeaders

      public HttpHeaders withAdditionalHeaders(Map<String,List<String>> headerMap)
      Returns a new HttpHeaders instance containing the headers of the current instance plus the provided headers.
      Parameters:
      headerMap - the map containing the headers to add
      Returns:
      the new HttpHeaders instance
      Throws:
      NullPointerException - if headerMap is null
    • allValues

      public List<String> allValues(String name)
      Returns an unmodifiable List of all of the header string values of the given named header. Always returns a List, which may be empty if the header is not present.
      Parameters:
      name - the header name
      Returns:
      a List of headers string values
    • firstValue

      public Optional<String> firstValue(String name)
      Returns an Optional containing the first header string value of the given named (and possibly multi-valued) header. If the header is not present, then the returned Optional is empty.
      Parameters:
      name - the header name
      Returns:
      an Optional<String> containing the first named header string value, if present
    • map

      public Map<String,List<String>> map()
      Returns an unmodifiable Map view of this HttpHeaders.
      Returns:
      the Map
    • toString

      public String toString()
      Returns this HttpHeaders as a string.
      Overrides:
      toString in class Object
      Returns:
      a string describing the HTTP headers
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object