code: public void setHeader(String header, String value) {
          StringValidator.throwIfEmptyOrNull("header", header);
          StringValidator.throwIfEmptyOrNull("value", value);
  
          if (headers == null) {
              headers = new HashMap<String, String>();
          }
  
          headers.put(header, value);
      }
docs: Sets a request header with the given name and value. If a header with the
  specified name has already been set then the new value overwrites the
  current value.
  
  @param header the name of the header
  @param value the value of the header
  
  @throws NullPointerException if header or value are null
  @throws IllegalArgumentException if header or value are the empty string