com.sun.identity.liberty.ws.paos
Class PAOSHeader

java.lang.Object
  extended by com.sun.identity.liberty.ws.paos.PAOSHeader

public class PAOSHeader
extends Object

The PAOSHeader class is used by a web application on HTTP server side to parse a PAOS header in an HTTP request from the user agent side. This header is used by the User Agent as a PAOS server to publish which services are available, which PAOS versions are supported, etc.. An example PAOS header looks like the following:

 PAOS: ver="ver1","ver2",ext="ext1","ext2";"service1","opt11",
           "opt12";"service2","opt21","opt22"
 
This class has methods for obtaining all the parts inside such a header.


Constructor Summary
PAOSHeader(HttpServletRequest req)
          This constructor accepts an HttpServletRequest and tries to parse the PAOS header string if there is one inside.
PAOSHeader(String paosHeaderString)
          This constructor accepts a PAOS header string and tries to parse it.
 
Method Summary
 Iterator getExtensions()
          Returns the list of extensions as Strings.
 HashMap getServicesAndOptions()
          Returns a HashMap containing the services and corresponding options.
 Iterator getVersions()
          Returns the list of versions as Strings.
 

Constructor Detail

PAOSHeader

public PAOSHeader(HttpServletRequest req)
           throws PAOSException
This constructor accepts an HttpServletRequest and tries to parse the PAOS header string if there is one inside.

Parameters:
req - the incoming HTTP request which is supposed to contain the PAOS header.
Throws:
PAOSException - if there are any parsing errors because the PAOS header is not there at all or because its content is not compliant to the PAOS specifications.

PAOSHeader

public PAOSHeader(String paosHeaderString)
           throws PAOSException
This constructor accepts a PAOS header string and tries to parse it.

Parameters:
paosHeaderString - the PAOS header string which supposedly contains information on available services, etc..
Throws:
PAOSException - if there are any parsing error because the PAOS header is invalid.
Method Detail

getVersions

public Iterator getVersions()
Returns the list of versions as Strings.

Returns:
the list of versions as Strings.

getExtensions

public Iterator getExtensions()
Returns the list of extensions as Strings.

Returns:
the list of extensions as Strings.

getServicesAndOptions

public HashMap getServicesAndOptions()
Returns a HashMap containing the services and corresponding options.

Returns:
a HashMap with each key being a service represented as a String, and with each value being a Set of the corresponding options represented as Strings