Package org.apache.http.message
Class BasicHeaderValueFormatter
java.lang.Object
org.apache.http.message.BasicHeaderValueFormatter
- All Implemented Interfaces:
HeaderValueFormatter
@Contract(threading=IMMUTABLE)
public class BasicHeaderValueFormatter
extends Object
implements 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.
- Since:
- 4.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final BasicHeaderValueFormatterDeprecated.static final BasicHeaderValueFormatterstatic final StringSpecial characters that can be used as separators in HTTP parameters.static final StringUnsafe special characters that must be escaped using the backslash character -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic StringformatElements(HeaderElement[] elems, boolean quote, HeaderValueFormatter formatter) Formats an array of header elements.formatElements(CharArrayBuffer charBuffer, HeaderElement[] elems, boolean quote) Formats an array of header elements.static StringformatHeaderElement(HeaderElement elem, boolean quote, HeaderValueFormatter formatter) Formats a header element.formatHeaderElement(CharArrayBuffer charBuffer, HeaderElement elem, boolean quote) Formats one header element.static StringformatNameValuePair(NameValuePair nvp, boolean quote, HeaderValueFormatter formatter) Formats a name-value pair.formatNameValuePair(CharArrayBuffer charBuffer, NameValuePair nvp, boolean quote) Formats one name-value pair, where the value is optional.static StringformatParameters(NameValuePair[] nvps, boolean quote, HeaderValueFormatter formatter) Formats a set of parameters.formatParameters(CharArrayBuffer charBuffer, NameValuePair[] nvps, boolean quote) Formats the parameters of a header element.
-
Field Details
-
DEFAULT
Deprecated.(4.3) useINSTANCEA default instance of this class, for use as default or fallback. Note thatBasicHeaderValueFormatteris not a singleton, there can be many instances of the class itself and of derived classes. The instance here provides non-customized, default behavior. -
INSTANCE
-
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 .- See Also:
-
UNSAFE_CHARS
Unsafe special characters that must be escaped using the backslash character- See Also:
-
-
Constructor Details
-
BasicHeaderValueFormatter
public BasicHeaderValueFormatter()
-
-
Method Details
-
formatElements
public static String formatElements(HeaderElement[] elems, boolean quote, HeaderValueFormatter formatter) Formats an array of header elements.- Parameters:
elems- the header elements to formatquote-trueto always format with quoted values,falseto use quotes only when necessaryformatter- the formatter to use, ornullfor thedefault- Returns:
- the formatted header elements
-
formatElements
public CharArrayBuffer formatElements(CharArrayBuffer charBuffer, HeaderElement[] elems, boolean quote) Description copied from interface:HeaderValueFormatterFormats an array of header elements.- Specified by:
formatElementsin interfaceHeaderValueFormatter- Parameters:
charBuffer- the buffer to append to, ornullto create a new bufferelems- the header elements to formatquote-trueto always format with quoted values,falseto use quotes only when necessary- Returns:
- a buffer with the formatted header elements.
If the
bufferargument was notnull, that buffer will be used and returned.
-
formatHeaderElement
public static String formatHeaderElement(HeaderElement elem, boolean quote, HeaderValueFormatter formatter) Formats a header element.- Parameters:
elem- the header element to formatquote-trueto always format with quoted values,falseto use quotes only when necessaryformatter- the formatter to use, ornullfor thedefault- Returns:
- the formatted header element
-
formatHeaderElement
public CharArrayBuffer formatHeaderElement(CharArrayBuffer charBuffer, HeaderElement elem, boolean quote) Description copied from interface:HeaderValueFormatterFormats one header element.- Specified by:
formatHeaderElementin interfaceHeaderValueFormatter- Parameters:
charBuffer- the buffer to append to, ornullto create a new bufferelem- the header element to formatquote-trueto always format with quoted values,falseto use quotes only when necessary- Returns:
- a buffer with the formatted header element.
If the
bufferargument was notnull, that buffer will be used and returned.
-
formatParameters
public static String formatParameters(NameValuePair[] nvps, boolean quote, HeaderValueFormatter formatter) Formats a set of parameters.- Parameters:
nvps- the parameters to formatquote-trueto always format with quoted values,falseto use quotes only when necessaryformatter- the formatter to use, ornullfor thedefault- Returns:
- the formatted parameters
-
formatParameters
public CharArrayBuffer formatParameters(CharArrayBuffer charBuffer, NameValuePair[] nvps, boolean quote) Description copied from interface:HeaderValueFormatterFormats 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.- Specified by:
formatParametersin interfaceHeaderValueFormatter- Parameters:
charBuffer- the buffer to append to, ornullto create a new buffernvps- the parameters (name-value pairs) to formatquote-trueto always format with quoted values,falseto use quotes only when necessary- Returns:
- a buffer with the formatted parameters.
If the
bufferargument was notnull, that buffer will be used and returned.
-
formatNameValuePair
public static String formatNameValuePair(NameValuePair nvp, boolean quote, HeaderValueFormatter formatter) Formats a name-value pair.- Parameters:
nvp- the name-value pair to formatquote-trueto always format with a quoted value,falseto use quotes only when necessaryformatter- the formatter to use, ornullfor thedefault- Returns:
- the formatted name-value pair
-
formatNameValuePair
public CharArrayBuffer formatNameValuePair(CharArrayBuffer charBuffer, NameValuePair nvp, boolean quote) Description copied from interface:HeaderValueFormatterFormats one name-value pair, where the value is optional.- Specified by:
formatNameValuePairin interfaceHeaderValueFormatter- Parameters:
charBuffer- the buffer to append to, ornullto create a new buffernvp- the name-value pair to formatquote-trueto always format with a quoted value,falseto use quotes only when necessary- Returns:
- a buffer with the formatted name-value pair.
If the
bufferargument was notnull, that buffer will be used and returned.
-
INSTANCE