rwaldhoff    01/08/23 17:25:29

  Modified:    httpclient/src/java/org/apache/commons/httpclient/methods
                        Tag: rlwrefactoring PostMethod.java
               httpclient/src/java/org/apache/commons/httpclient Tag:
                        rlwrefactoring State.java URIUtil.java
  Log:
  add some additional pathSafe characters to URIUtil
  add queryStringValueSafe characters to URIUtil
  have PostMethod use URIUtil rather than URLEncoder
  remove legacy URI encoding methods from State
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.3.2.8   +8 -8      
jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/methods/PostMethod.java
  
  Index: PostMethod.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/methods/PostMethod.java,v
  retrieving revision 1.3.2.7
  retrieving revision 1.3.2.8
  diff -u -r1.3.2.7 -r1.3.2.8
  --- PostMethod.java   2001/08/16 23:55:47     1.3.2.7
  +++ PostMethod.java   2001/08/24 00:25:29     1.3.2.8
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/methods/PostMethod.java,v
 1.3.2.7 2001/08/16 23:55:47 rwaldhoff Exp $
  - * $Revision: 1.3.2.7 $
  - * $Date: 2001/08/16 23:55:47 $
  + * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/methods/PostMethod.java,v
 1.3.2.8 2001/08/24 00:25:29 rwaldhoff Exp $
  + * $Revision: 1.3.2.8 $
  + * $Date: 2001/08/24 00:25:29 $
    * ====================================================================
    * Copyright (C) The Apache Software Foundation. All rights reserved.
    *
  @@ -14,11 +14,11 @@
   
   import java.io.*;
   import java.util.*;
  -import java.net.URLEncoder;
   import org.apache.commons.httpclient.State;
   import org.apache.commons.httpclient.HttpConnection;
   import org.apache.commons.httpclient.HttpMethodBase;
   import org.apache.commons.httpclient.HttpException;
  +import org.apache.commons.httpclient.URIUtil;
   import java.util.Iterator;
   import java.util.HashMap;
   import java.util.List;
  @@ -242,19 +242,19 @@
                       Iterator valit = list.iterator();
                       while(valit.hasNext()) {
                           if(sb.length() > 0) { sb.append("&"); }
  -                        sb.append(URLEncoder.encode(name));
  +                        
sb.append(URIUtil.encode(name,URIUtil.queryStringValueSafe(),true));
                           Object val2 = valit.next();
                           if(null != val2) {
                               sb.append("=");
  -                            sb.append(URLEncoder.encode(String.valueOf(val2)));
  +                            
sb.append(URIUtil.encode(String.valueOf(val2),URIUtil.queryStringValueSafe(),true));
                           }
                       }
                   } else {
                       if(sb.length() > 0) { sb.append("&"); }
  -                    sb.append(URLEncoder.encode(name));
  +                    sb.append(URIUtil.encode(name,URIUtil.queryStringValueSafe()));
                       if(null != value) {
                           sb.append("=");
  -                        sb.append(URLEncoder.encode(String.valueOf(value)));
  +                        
sb.append(URIUtil.encode(String.valueOf(value),URIUtil.queryStringValueSafe(),true));
                       }
                   }
               }
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.3.2.4   +4 -72     
jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/State.java
  
  Index: State.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/State.java,v
  retrieving revision 1.3.2.3
  retrieving revision 1.3.2.4
  diff -u -r1.3.2.3 -r1.3.2.4
  --- State.java        2001/08/20 17:21:19     1.3.2.3
  +++ State.java        2001/08/24 00:25:29     1.3.2.4
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/State.java,v
 1.3.2.3 2001/08/20 17:21:19 rwaldhoff Exp $
  - * $Revision: 1.3.2.3 $
  - * $Date: 2001/08/20 17:21:19 $
  + * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/State.java,v
 1.3.2.4 2001/08/24 00:25:29 rwaldhoff Exp $
  + * $Revision: 1.3.2.4 $
  + * $Date: 2001/08/24 00:25:29 $
    *
    * ====================================================================
    *
  @@ -73,10 +73,10 @@
    * Session state.
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Remy Maucherat</a>
  + * @version $Revision: 1.3.2.4 $
    */
   public class State {
   
  -
       // ----------------------------------------------------- Instance Variables
   
       protected HashMap credMap = new HashMap();
  @@ -86,28 +86,8 @@
         */
       protected Vector cookies = new Vector();
   
  -
  -    /**
  -     * URL encoding switch.
  -     */
  -    protected boolean encodeURLs = true;
  -
  -
  -    /**
  -     * URL encoding charset.
  -     */
  -    protected String URLEncodingCharset = "UTF8";
  -
  -
  -    /**
  -     * URL decoding charset.
  -     */
  -    protected String URLDecodingCharset = "UTF8";
  -
  -
       // ------------------------------------------------------------- Properties
   
  -
       /**
        * Add a cookie.
        * If the cookie has already expired, deletes the
  @@ -131,7 +111,6 @@
   
       }
   
  -
       /**
        * Add a number of cookies
        * If the cookie has already expired, deletes the
  @@ -145,37 +124,12 @@
           }
       }
   
  -
       // FIXME: this breaks encapsulation on the cookie vector
       public Vector getCookies() {
           return cookies;
       }
   
  -
  -    /**
  -     * Set the URL encoding flag.
  -     */
  -    public void setEncodeURLs(boolean encodeURLs) {
  -        this.encodeURLs = encodeURLs;
  -    }
  -
  -
  -    /**
  -     * Set URL encoding charset.
  -     */
  -    public void setURLEncodingCharset(String URLEncodingCharset) {
  -        this.URLEncodingCharset = URLEncodingCharset;
  -    }
  -
  -
       /**
  -     * Set URL decoding charset.
  -     */
  -    public void setURLDecodingCharset(String URLDecodingCharset) {
  -        this.URLDecodingCharset = URLDecodingCharset;
  -    }
  -
  -    /**
        * Set the {@link Credentials} for the given authentication realm.
        */
       public void setCredentials(String realm, Credentials credentials) {
  @@ -209,28 +163,6 @@
        */
       public Credentials getDefaultCredentials() {
           return this.getCredentials(null);
  -    }
  -
  -    // --------------------------------------------------------- Public Methods
  -
  -
  -    /**
  -     * URL encode.
  -     */
  -    public String URLEncode(String url) {
  -        if (encodeURLs) {
  -            return URLUtil.URLEncode(url, URLEncodingCharset);
  -        } else {
  -            return url;
  -        }
  -    }
  -
  -
  -    /**
  -     * URL decode.
  -     */
  -    public String URLDecode(String url) {
  -        return URLUtil.URLDecode(url, URLDecodingCharset);
       }
   
   
  
  
  
  1.1.2.2   +23 -5     
jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/URIUtil.java
  
  Index: URIUtil.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/URIUtil.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- URIUtil.java      2001/08/23 21:45:33     1.1.2.1
  +++ URIUtil.java      2001/08/24 00:25:29     1.1.2.2
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/URIUtil.java,v
 1.1.2.1 2001/08/23 21:45:33 rwaldhoff Exp $
  - * $Revision: 1.1.2.1 $
  - * $Date: 2001/08/23 21:45:33 $
  + * $Header: 
/home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/URIUtil.java,v
 1.1.2.2 2001/08/24 00:25:29 rwaldhoff Exp $
  + * $Revision: 1.1.2.2 $
  + * $Date: 2001/08/24 00:25:29 $
    *
    * ====================================================================
    *
  @@ -83,7 +83,7 @@
    * @author Remy Maucherat
    * @author Park, Sung-Gu
    * @author Rodney Waldhoff
  - * @version $Revision: 1.1.2.1 $ $Date: 2001/08/23 21:45:33 $
  + * @version $Revision: 1.1.2.2 $ $Date: 2001/08/24 00:25:29 $
    */
   
   public class URIUtil {
  @@ -527,6 +527,10 @@
           return pathSafe;
       }
   
  +    public static final BitSet queryStringValueSafe() {
  +        return queryStringValueSafe;
  +    }
  +
       // ------------------------------------------------------ Private Constants
   
       /**
  @@ -646,12 +650,26 @@
           unwise.set('`');
       }
   
  +    private static final BitSet pathReserved = new BitSet(256);
  +    /** Static initializer for {@link #pathReserved}. */
  +    static {
  +        pathReserved.set('/');
  +        pathReserved.set(';');
  +        pathReserved.set('=');
  +        pathReserved.set('?');
  +    }
  +
       // ------------------------------ "Safe" Character Sets : Private Constants
   
       private static final BitSet pathSafe = new BitSet(256);
       static {
           pathSafe.or(unreserved);
  -        pathSafe.set('/');
  +        pathSafe.or(pathReserved);
  +    }
  +
  +    private static final BitSet queryStringValueSafe = new BitSet(256);
  +    static {
  +        queryStringValueSafe.or(unreserved);
       }
   
       // -------------------------------------------------------- Private Methods
  
  
  

Reply via email to