org.apache.http.message
Class BasicHeaderElement

java.lang.Object
  extended by org.apache.http.message.BasicHeaderElement
All Implemented Interfaces:
java.lang.Cloneable, HeaderElement

public class BasicHeaderElement
extends java.lang.Object
implements HeaderElement, java.lang.Cloneable

One element of an HTTP header's value.

Some HTTP headers (such as the set-cookie header) have values that can be decomposed into multiple elements. Such headers must be in the following form:

 header  = [ element ] *( "," [ element ] )
 element = name [ "=" [ value ] ] *( ";" [ param ] )
 param   = name [ "=" [ value ] ]

 name    = token
 value   = ( token | quoted-string )

 token         = 1*<any char except "=", ",", ";", <"> and
                       white space>
 quoted-string = <"> *( text | quoted-char ) <">
 text          = any char except <">
 quoted-char   = "\" char
 

Any amount of white space is allowed between any part of the header, element or param and is ignored. A missing value in any element or param will be stored as the empty String; if the "=" is also missing null will be stored instead.

This class represents an individual header element, containing both a name/value pair (value may be null) and optionally a set of additional parameters.

Since:
4.0
Version:
$Revision: 604625 $ $Date: 2007-12-16 15:11:11 +0100 (Sun, 16 Dec 2007) $
Author:
B.C. Holmes, Park, Sung-Gu, Mike Bowler, Oleg Kalnichevski

Constructor Summary
BasicHeaderElement(java.lang.String name, java.lang.String value)
          Constructor with name and value.
BasicHeaderElement(java.lang.String name, java.lang.String value, NameValuePair[] parameters)
          Constructor with name, value and parameters.
 
Method Summary
 java.lang.Object clone()
           
 boolean equals(java.lang.Object object)
           
 java.lang.String getName()
          Returns the name.
 NameValuePair getParameter(int index)
          Obtains the parameter with the given index.
 NameValuePair getParameterByName(java.lang.String name)
          Returns parameter with the given name, if found.
 int getParameterCount()
          Obtains the number of parameters.
 NameValuePair[] getParameters()
          Get parameters, if any.
 java.lang.String getValue()
          Returns the value.
 int hashCode()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BasicHeaderElement

public BasicHeaderElement(java.lang.String name,
                          java.lang.String value,
                          NameValuePair[] parameters)
Constructor with name, value and parameters.

Parameters:
name - header element name
value - header element value. May be null
parameters - header element parameters. May be null. Parameters are copied by reference, not by value

BasicHeaderElement

public BasicHeaderElement(java.lang.String name,
                          java.lang.String value)
Constructor with name and value.

Parameters:
name - header element name
value - header element value. May be null
Method Detail

getName

public java.lang.String getName()
Returns the name.

Specified by:
getName in interface HeaderElement
Returns:
String name The name

getValue

public java.lang.String getValue()
Returns the value.

Specified by:
getValue in interface HeaderElement
Returns:
String value The current value.

getParameters

public NameValuePair[] getParameters()
Get parameters, if any. The returned array is created for each invocation and can be modified by the caller without affecting this header element.

Specified by:
getParameters in interface HeaderElement
Returns:
parameters as an array of NameValuePairs

getParameterCount

public int getParameterCount()
Obtains the number of parameters.

Specified by:
getParameterCount in interface HeaderElement
Returns:
the number of parameters

getParameter

public NameValuePair getParameter(int index)
Obtains the parameter with the given index.

Specified by:
getParameter in interface HeaderElement
Parameters:
index - the index of the parameter, 0-based
Returns:
the parameter with the given index

getParameterByName

public NameValuePair getParameterByName(java.lang.String name)
Returns parameter with the given name, if found. Otherwise null is returned

Specified by:
getParameterByName in interface HeaderElement
Parameters:
name - The name to search by.
Returns:
NameValuePair parameter with the given name

equals

public boolean equals(java.lang.Object object)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Overrides:
clone in class java.lang.Object
Throws:
java.lang.CloneNotSupportedException


Copyright © 2005-2008 Apache Software Foundation. All Rights Reserved.