code: protected void addRequestHeaders(HttpState state, HttpConnection conn)
      throws IOException, HttpException {
          LOG.trace("enter HttpMethodBase.addRequestHeaders(HttpState, "
              + "HttpConnection)");
  
          addHostRequestHeader(state, conn);
          addCookieRequestHeader(state, conn);
          addProxyConnectionHeader(state, conn);
      }
docs: Generates all the required request {@link Header header}s
  to be submitted via the given {@link HttpConnection connection}.
  
  <p>
  This implementation adds <tt>User-Agent</tt>, <tt>Host</tt>,
  <tt>Cookie</tt>, <tt>Authorization</tt>, <tt>Proxy-Authorization</tt>
  and <tt>Proxy-Connection</tt> headers, when appropriate.
  </p>
  
  <p>
  Subclasses may want to override this method to to add additional
  headers, and may choose to invoke this implementation (via
  <tt>super</tt>) to add the "standard" headers.
  </p>
  
  @param state the {@link HttpState state} information associated with this method
  @param conn the {@link HttpConnection connection} used to execute
  this HTTP method
  
  @throws IOException if an I/O (transport) error occurs. Some transport exceptions
  can be recovered from.
  @throws HttpException  if a protocol exception occurs. Usually protocol exceptions
  cannot be recovered from.
  
  @see #writeRequestHeaders