org.apache.commons.httpclient.auth

Class RFC2617Scheme

public abstract class RFC2617Scheme extends Object implements AuthScheme

Abstract authentication scheme class that lays foundation for all RFC 2617 compliant authetication schemes and provides capabilities common to all authentication schemes defined in RFC 2617.

Author: Oleg Kalnichevski

Constructor Summary
RFC2617Scheme()
Default constructor for RFC2617 compliant authetication schemes.
RFC2617Scheme(String challenge)
Default constructor for RFC2617 compliant authetication schemes.
Method Summary
StringgetID()
Returns a String identifying the authentication challenge.
StringgetParameter(String name)
Returns authentication parameter with the given name, if available.
protected MapgetParameters()
Returns authentication parameters map.
StringgetRealm()
Returns authentication realm.
voidprocessChallenge(String challenge)
Processes the given challenge token.

Constructor Detail

RFC2617Scheme

public RFC2617Scheme()
Default constructor for RFC2617 compliant authetication schemes.

Since: 3.0

RFC2617Scheme

public RFC2617Scheme(String challenge)

Deprecated: Use parameterless constructor and processChallenge method

Default constructor for RFC2617 compliant authetication schemes.

Parameters: challenge authentication challenge

Throws: MalformedChallengeException is thrown if the authentication challenge is malformed

Method Detail

getID

public String getID()

Deprecated: no longer used

Returns a String identifying the authentication challenge. This is used, in combination with the host and port to determine if authorization has already been attempted or not. Schemes which require multiple requests to complete the authentication should return a different value for each stage in the request.

Additionally, the ID should take into account any changes to the authentication challenge and return a different value when appropriate. For example when the realm changes in basic authentication it should be considered a different authentication attempt and a different value should be returned.

This method simply returns the realm for the challenge.

Returns: String a String identifying the authentication challenge. The returned value may be null.

getParameter

public String getParameter(String name)
Returns authentication parameter with the given name, if available.

Parameters: name The name of the parameter to be returned

Returns: the parameter with the given name

getParameters

protected Map getParameters()
Returns authentication parameters map. Keys in the map are lower-cased.

Returns: the map of authentication parameters

getRealm

public String getRealm()
Returns authentication realm. The realm may not be null.

Returns: the authentication realm

processChallenge

public void processChallenge(String challenge)
Processes the given challenge token. Some authentication schemes may involve multiple challenge-response exchanges. Such schemes must be able to maintain the state information when dealing with sequential challenges

Parameters: challenge the challenge string

Throws: MalformedChallengeException is thrown if the authentication challenge is malformed

Since: 3.0

Copyright (c) 1999-2005 - Apache Software Foundation