Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.httpclient.util
Class ParameterFormatter

    java.lang.Object
      org.apache.commons.httpclient.util.ParameterFormatter

    public class ParameterFormatter

extends Object

This formatter produces a textual representation of attribute/value pairs. It comforms to the generic grammar and formatting rules outlined in the Section 2.1 and Section 3.6 of RFC 2616

2.1 Augmented BNF

Many HTTP/1.1 header field values consist of words separated by LWS or special characters. These special characters MUST be in a quoted string to be used within a parameter value (as defined in section 3.6).

     token          = 1*
     separators     = "(" | ")" | "<" | ">" | "@"
                    | "," | ";" | ":" | "\" | <">
                    | "/" | "[" | "]" | "?" | "="
                    | "{" | "}" | SP | HT

A string of text is parsed as a single word if it is quoted using double-quote marks.

     quoted-string  = ( <"> *(qdtext | quoted-pair ) <"> )
     qdtext         = >

The backslash character ("\") MAY be used as a single-character quoting mechanism only within quoted-string and comment constructs.

     quoted-pair    = "\" CHAR

3.6 Transfer Codings

Parameters are in the form of attribute/value pairs.

     parameter               = attribute "=" value
     attribute               = token
     value                   = token | quoted-string

Since:
  3.0
Author:
  Oleg Kalnichevski

Constructor Summary
`ParameterFormatter()` Default ParameterFormatter constructor

Method Summary
`String` | `format(NameValuePair param)` Produces textual representaion of the attribute/value pair using formatting rules defined in RFC 2616
`void` | `format(StringBuffer buffer, NameValuePair param)` Produces textual representaion of the attribute/value pair using formatting rules defined in RFC 2616
`static void` | `formatValue(StringBuffer buffer, String value, boolean alwaysUseQuotes)` Formats the given parameter value using formatting rules defined in RFC 2616
`boolean` | `isAlwaysUseQuotes()` Determines whether all parameter values must be enclosed in quotation marks, even if they do not contain any special characters
`void` | `setAlwaysUseQuotes(boolean alwaysUseQuotes)` Defines whether all parameter values must be enclosed in quotation marks, even if they do not contain any special characters

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ParameterFormatter

    public ParameterFormatter()

  Default ParameterFormatter constructor

Method Detail

### isAlwaysUseQuotes

    public boolean isAlwaysUseQuotes()

  Determines whether all parameter values must be enclosed in quotation marks, even if they do not contain any special characters

  Returns:
    `true` if all parameter values must be enclosed in quotation marks, `false` otherwise

### setAlwaysUseQuotes

    public void setAlwaysUseQuotes(boolean alwaysUseQuotes)

  Defines whether all parameter values must be enclosed in quotation marks, even if they do not contain any special characters

  Parameters:
    `alwaysUseQuotes` -

### formatValue

    public static void formatValue(StringBuffer buffer,
                                   String value,
                                   boolean alwaysUseQuotes)

  Formats the given parameter value using formatting rules defined in RFC 2616

  Parameters:
    `buffer` - output buffer
    `value` - the parameter value to be formatted
    `alwaysUseQuotes` - `true` if the parameter value must be enclosed in quotation marks, even if it does not contain any special characters`, false` only if the parameter value contains potentially unsafe special characters

### format

    public void format(StringBuffer buffer,
                       NameValuePair param)

  Produces textual representaion of the attribute/value pair using formatting rules defined in RFC 2616

  Parameters:
    `buffer` - output buffer
    `param` - the parameter to be formatted

### format

    public String format(NameValuePair param)

  Produces textual representaion of the attribute/value pair using formatting rules defined in RFC 2616

  Parameters:
    `param` - the parameter to be formatted
  Returns:
    RFC 2616 conformant textual representaion of the attribute/value pair

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.