code: public void setRequestProperty(String key, String value) {
          if (connected)
              throw new IllegalStateException("Already connected");
          if (key == null)
              throw new NullPointerException ("key is null");
  
          if (requests == null)
              requests = new MessageHeader();
  
          requests.set(key, value);
      }
docs: Sets the general request property. If a property with the key already
  exists, overwrite its value with the new value.
  
  <p> NOTE: HTTP requires all request properties which can
  legally have multiple instances with the same key
  to use a comma-seperated list syntax which enables multiple
  properties to be appended into a single property.
  
  @param   key     the keyword by which the request is known
  (e.g., "<code>Accept</code>").
  @param   value   the value associated with it.
  @throws IllegalStateException if already connected
  @throws NullPointerException if key is <CODE>null</CODE>
  @see #getRequestProperty(java.lang.String)