org.apache.commons.httpclient

Class HeaderGroup

public class HeaderGroup extends Object

A class for combining a set of headers. This class allows for multiple headers with the same name and keeps track of the order in which headers were added.

Since: 2.0beta1

Author: Michael Becke

Constructor Summary
HeaderGroup()
Constructor for HeaderGroup.
Method Summary
voidaddHeader(Header header)
Adds the given header to the group.
voidclear()
Removes any contained headers.
booleancontainsHeader(String name)
Tests if headers with the given name are contained within this group.
Header[]getAllHeaders()
Gets all of the headers contained within this group.
HeadergetCondensedHeader(String name)
Gets a header representing all of the header values with the given name.
HeadergetFirstHeader(String name)
Gets the first header with the given name.
Header[]getHeaders(String name)
Gets all of the headers with the given name.
IteratorgetIterator()
Returns an iterator over this group of headers.
HeadergetLastHeader(String name)
Gets the last header with the given name.
voidremoveHeader(Header header)
Removes the given header.
voidsetHeaders(Header[] headers)
Sets all of the headers contained within this group overriding any existing headers.

Constructor Detail

HeaderGroup

public HeaderGroup()
Constructor for HeaderGroup.

Method Detail

addHeader

public void addHeader(Header header)
Adds the given header to the group. The order in which this header was added is preserved.

Parameters: header the header to add

clear

public void clear()
Removes any contained headers.

containsHeader

public boolean containsHeader(String name)
Tests if headers with the given name are contained within this group.

Header name comparison is case insensitive.

Parameters: name the header name to test for

Returns: true if at least one header with the name is contained, false otherwise

getAllHeaders

public Header[] getAllHeaders()
Gets all of the headers contained within this group.

Returns: an array of length >= 0

getCondensedHeader

public Header getCondensedHeader(String name)
Gets a header representing all of the header values with the given name. If more that one header with the given name exists the values will be combined with a "," as per RFC 2616.

Header name comparison is case insensitive.

Parameters: name the name of the header(s) to get

Returns: a header with a condensed value or null if no headers by the given name are present

getFirstHeader

public Header getFirstHeader(String name)
Gets the first header with the given name.

Header name comparison is case insensitive.

Parameters: name the name of the header to get

Returns: the first header or null

getHeaders

public Header[] getHeaders(String name)
Gets all of the headers with the given name. The returned array maintains the relative order in which the headers were added.

Header name comparison is case insensitive.

Parameters: name the name of the header(s) to get

Returns: an array of length >= 0

getIterator

public Iterator getIterator()
Returns an iterator over this group of headers.

Returns: iterator over this group of headers.

Since: 3.0

getLastHeader

public Header getLastHeader(String name)
Gets the last header with the given name.

Header name comparison is case insensitive.

Parameters: name the name of the header to get

Returns: the last header or null

removeHeader

public void removeHeader(Header header)
Removes the given header.

Parameters: header the header to remove

setHeaders

public void setHeaders(Header[] headers)
Sets all of the headers contained within this group overriding any existing headers. The headers are added in the order in which they appear in the array.

Parameters: headers the headers to set

Copyright (c) 1999-2005 - Apache Software Foundation