Android

org.apache.http.message.BasicHeaderValueFormatter

java.lang.Object
org.apache.http.message.BasicHeaderValueFormatter HeaderValueFormatter

Basic implementation for formatting header value elements. Instances of this class are stateless and thread-safe. Derived classes are expected to maintain these properties.

Summary

Constants

      Value  
BasicHeaderValueFormatter  DEFAULT  A default instance of this class, for use as default or fallback.     
String  SEPARATORS  Special characters that can be used as separators in HTTP parameters.  " ;,:@()<>\"/[]?={} " 
String  UNSAFE_CHARS  Unsafe special characters that must be escaped using the backslash character   ""\" 

Public Constructors

            BasicHeaderValueFormatter()

Public Methods

          CharArrayBuffer  formatElements(CharArrayBuffer buffer, HeaderElement[] elems, boolean quote)
Formats an array of header elements.
    final  static    String  formatElements(HeaderElement[] elems, boolean quote, HeaderValueFormatter formatter)
Formats an array of header elements.
          CharArrayBuffer  formatHeaderElement(CharArrayBuffer buffer, HeaderElement elem, boolean quote)
Formats one header element.
    final  static    String  formatHeaderElement(HeaderElement elem, boolean quote, HeaderValueFormatter formatter)
Formats a header element.
    final  static    String  formatNameValuePair(NameValuePair nvp, boolean quote, HeaderValueFormatter formatter)
Formats a name-value pair.
          CharArrayBuffer  formatNameValuePair(CharArrayBuffer buffer, NameValuePair nvp, boolean quote)
Formats one name-value pair, where the value is optional.
          CharArrayBuffer  formatParameters(CharArrayBuffer buffer, NameValuePair[] nvps, boolean quote)
Formats the parameters of a header element.
    final  static    String  formatParameters(NameValuePair[] nvps, boolean quote, HeaderValueFormatter formatter)
Formats a set of parameters.

Protected Methods

          void  doFormatValue(CharArrayBuffer buffer, String value, boolean quote)
Actually formats the value of a name-value pair.
          int  estimateElementsLen(HeaderElement[] elems)
Estimates the length of formatted header elements.
          int  estimateHeaderElementLen(HeaderElement elem)
Estimates the length of a formatted header element.
          int  estimateNameValuePairLen(NameValuePair nvp)
Estimates the length of a formatted name-value pair.
          int  estimateParametersLen(NameValuePair[] nvps)
Estimates the length of formatted parameters.
          boolean  isSeparator(char ch)
Checks whether a character is a separator.
          boolean  isUnsafe(char ch)
Checks whether a character is unsafe.
Methods inherited from class java.lang.Object
Methods inherited from interface org.apache.http.message.HeaderValueFormatter

Details

Constants

public static final BasicHeaderValueFormatter DEFAULT

A default instance of this class, for use as default or fallback. Note that BasicHeaderValueFormatter is not a singleton, there can be many instances of the class itself and of derived classes. The instance here provides non-customized, default behavior.

public static final String SEPARATORS

Special characters that can be used as separators in HTTP parameters. These special characters MUST be in a quoted string to be used within a parameter value .
Constant Value: " ;,:@()<>\"/[]?={} "

public static final String UNSAFE_CHARS

Unsafe special characters that must be escaped using the backslash character
Constant Value: ""\"

Public Constructors

public BasicHeaderValueFormatter()

Public Methods

public CharArrayBuffer formatElements(CharArrayBuffer buffer, HeaderElement[] elems, boolean quote)

Formats an array of header elements.

public static final String formatElements(HeaderElement[] elems, boolean quote, HeaderValueFormatter formatter)

Formats an array of header elements.

Parameters

elems the header elements to format
quote true to always format with quoted values, false to use quotes only when necessary
formatter the formatter to use, or null for the default

Returns

  • the formatted header elements

public CharArrayBuffer formatHeaderElement(CharArrayBuffer buffer, HeaderElement elem, boolean quote)

Formats one header element.

public static final String formatHeaderElement(HeaderElement elem, boolean quote, HeaderValueFormatter formatter)

Formats a header element.

Parameters

elem the header element to format
quote true to always format with quoted values, false to use quotes only when necessary
formatter the formatter to use, or null for the default

Returns

  • the formatted header element

public static final String formatNameValuePair(NameValuePair nvp, boolean quote, HeaderValueFormatter formatter)

Formats a name-value pair.

Parameters

nvp the name-value pair to format
quote true to always format with a quoted value, false to use quotes only when necessary
formatter the formatter to use, or null for the default

Returns

  • the formatted name-value pair

public CharArrayBuffer formatNameValuePair(CharArrayBuffer buffer, NameValuePair nvp, boolean quote)

Formats one name-value pair, where the value is optional.

public CharArrayBuffer formatParameters(CharArrayBuffer buffer, NameValuePair[] nvps, boolean quote)

Formats the parameters of a header element. That's a list of name-value pairs, to be separated by semicolons. This method will not generate a leading semicolon.

public static final String formatParameters(NameValuePair[] nvps, boolean quote, HeaderValueFormatter formatter)

Formats a set of parameters.

Parameters

nvps the parameters to format
quote true to always format with quoted values, false to use quotes only when necessary
formatter the formatter to use, or null for the default

Returns

  • the formatted parameters

Protected Methods

protected void doFormatValue(CharArrayBuffer buffer, String value, boolean quote)

Actually formats the value of a name-value pair. This does not include a leading = character. Called from formatNameValuePair.

Parameters

buffer the buffer to append to, never null
value the value to append, never null
quote true to always format with quotes, false to use quotes only when necessary

protected int estimateElementsLen(HeaderElement[] elems)

Estimates the length of formatted header elements.

Parameters

elems the header elements to format, or null

Returns

  • a length estimate, in number of characters

protected int estimateHeaderElementLen(HeaderElement elem)

Estimates the length of a formatted header element.

Parameters

elem the header element to format, or null

Returns

  • a length estimate, in number of characters

protected int estimateNameValuePairLen(NameValuePair nvp)

Estimates the length of a formatted name-value pair.

Parameters

nvp the name-value pair to format, or null

Returns

  • a length estimate, in number of characters

protected int estimateParametersLen(NameValuePair[] nvps)

Estimates the length of formatted parameters.

Parameters

nvps the parameters to format, or null

Returns

  • a length estimate, in number of characters

protected boolean isSeparator(char ch)

Checks whether a character is a separator.

Parameters

ch the character to check

Returns

  • true if the character is a separator, false otherwise

protected boolean isUnsafe(char ch)

Checks whether a character is unsafe.

Parameters

ch the character to check

Returns

  • true if the character is unsafe, false otherwise
Copyright 2007 Google Inc. Build 0.9_r1-98467 - 14 Aug 2008 18:56