rwaldhoff    01/08/14 11:02:49

  Modified:    httpclient/src/java/org/apache/commons/httpclient Tag:
                        rlwrefactoring Authenticator.java
  Log:
  removing deprecated methods, javadoc
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.6.2.2   +38 -66    
jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/Authenticator.java
  
  Index: Authenticator.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/Authenticator.java,v
  retrieving revision 1.6.2.1
  retrieving revision 1.6.2.2
  diff -u -r1.6.2.1 -r1.6.2.2
  --- Authenticator.java        2001/08/13 15:50:13     1.6.2.1
  +++ Authenticator.java        2001/08/14 18:02:49     1.6.2.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/Authenticator.java,v
 1.6.2.1 2001/08/13 15:50:13 rwaldhoff Exp $
  - * $Revision: 1.6.2.1 $
  - * $Date: 2001/08/13 15:50:13 $
  + * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/Authenticator.java,v
 1.6.2.2 2001/08/14 18:02:49 rwaldhoff Exp $
  + * $Revision: 1.6.2.2 $
  + * $Date: 2001/08/14 18:02:49 $
    *
    * ====================================================================
    *
  @@ -68,67 +68,33 @@
   import org.apache.commons.httpclient.log.*;
   
   /**
  - * Authenticate helper.
  + * Authorization helper.
  + * <p>
  + * This class provides utility methods for generating
  + * responses to HTTP authentication challenges.
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Remy Maucherat</a>
  + * @version $Id: Authenticator.java,v 1.6.2.2 2001/08/14 18:02:49 rwaldhoff Exp $
    */
   public class Authenticator {
  -    static private final Log log = 
LogSource.getInstance("org.apache.commons.httpclient.Authenticator");
  -
  -
  -    // ----------------------------------------------------- Instance Variables
  -
  -
  -    /**
  -     * Base 64 encoder.
  -     */
  -    protected static Base64 base64 = new Base64();
  -
  -
  -    // ------------------------------------------------------------- Properties
  -
   
       /**
  -     * Generate a response to the given challenge.
  +     * Generate a response (suitable for use in an <tt>Authorization</tt>
  +     * header) for the given <i>challenge</i> and <i>state</i>.
        *
  -     * @param state State
  -     * @param credentials Credentials to use to answser the challenge
  -     * @return String response to the challenge
  -     * @deprecated Use {@link 
#challengeResponse(java.lang.String,org.apache.commons.httpclient.State)}
  +     * @param challenge the authentication challenge
  +     *                  (e.g., the <tt>WWW-Authenticate</tt> header value)
  +     * @param state a {@link #State} object providing {@link Credentials}
  +     *
  +     * @return an <tt>Authorization</tt> value
  +     *
  +     * @throws HttpException when a parsing or other error occurs
  +     * @throws UnsupportedOperationException when the given challenge type is not 
supported
        */
  -    public static String challengeResponse(State state,
  -                                           Credentials credentials)
  -        throws HttpException {
  -        log.debug("Authenticator.challengeResponse(State,Credentials)");
  -
  -        if (credentials == null)
  -            throw new HttpException(HttpException.NO_CREDENTIALS_GIVEN);
  -
  -        String challenge = state.getAuthenticateToken();
  -        if (challenge == null) {
  -            return null;
  -        }
  -
  -        int space = challenge.indexOf(' ');
  -        if (space < 0)
  -            return null;
  -
  -        String authScheme = challenge.substring(0, space);
  -
  -        if ("basic".equalsIgnoreCase(authScheme)) {
  -            return basic(state, credentials);
  -        } else if ("digest".equalsIgnoreCase(authScheme)) {
  -            throw new UnsupportedOperationException("Digest authentication is not 
supported.");
  -        } else {
  -            throw new UnsupportedOperationException("Authentication type \"" + 
authScheme + "\" is not recognized.");
  -        }
  -    }
  -
  -
       public static String challengeResponse(String challenge, State state) throws 
HttpException {
           log.debug("Authenticator.challengeResponse(String, State)");
   
  -        if(challenge == null) { return null; }
  +        if(null == challenge) { return null; }
   
           int space = challenge.indexOf(' ');
           if(space < 0) {
  @@ -137,18 +103,18 @@
           String authScheme = challenge.substring(0, space);
   
           if ("basic".equalsIgnoreCase(authScheme)) {
  -            // parse the realm from the authentication challenge
               // XXX FIX ME XXX
               // Note that this won't work if there is more than one
               // realm within the challenge
               // We could probably make it a bit more flexible in
               // parsing as well.
  +
  +            // parse the realm from the authentication challenge
               if(challenge.length() < space + 1) {
                   throw new HttpException("Unable to parse authentication challenge 
\"" + challenge + "\", expected realm");
               }
               String realmstr = challenge.substring(space+1,challenge.length());
               realmstr.trim();
  -            log.debug("Parsing realm from \"" + realmstr + "\".");
               String realm = 
realmstr.substring("realm=\"".length(),realmstr.length()-1);
               log.debug("Parsed realm \"" + realm + "\" from challenge \"" + 
challenge + "\".");
   
  @@ -161,19 +127,17 @@
       }
   
       /**
  -     * Generate a basic response.
  +     * Generate a basic response (suitable for use in
  +     * an <tt>Authorization</tt> header) for the given
  +     * <i>realm</i> and <i>state</i>.
  +     *
  +     * @param realm the basic realm to authenticate to
  +     * @param state a {@link #State} object providing {@link Credentials}
        *
  -     * @param credentials Credentials to use to answser the challenge
  -     * @deprecated Use {@link 
#basic(java.lang.String,org.apache.commons.httpclient.State)}
  +     * @return a basic <tt>Authorization</tt> value
  +     *
  +     * @throws HttpException when no matching credentials are available
        */
  -    public static String basic(State state, Credentials credentials) {
  -        log.debug("Authenticator.basic(State,Credentials)");
  -        String authString = credentials.getUserName() + ":"
  -            + credentials.getPassword();
  -        return "Basic " + new String(base64.encode(authString.getBytes()));
  -
  -    }
  -
       public static String basic(String realm, State state) throws HttpException {
           log.debug("Authenticator.basic(String,State)");
           Credentials cred = state.getCredentials(realm);
  @@ -190,4 +154,12 @@
           return "Basic " + new String(base64.encode(authString.getBytes()));
       }
   
  +
  +    // -------------------------------------------------------- Class Variables
  +
  +    /** <tt>org.apache.commons.httpclient.Authenticator</tt> log. */
  +    static private final Log log = 
LogSource.getInstance("org.apache.commons.httpclient.Authenticator");
  +
  +    /** Base 64 encoder. */
  +    protected static Base64 base64 = new Base64();
   }
  
  
  

Reply via email to