You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by br...@apache.org on 2003/07/14 10:13:16 UTC

cvs commit: avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source SourceUtil.java

bruno       2003/07/14 01:13:16

  Modified:    sourceresolve/src/java/org/apache/excalibur/source
                        SourceUtil.java
  Log:
  Added a variant of the absolutize method which allows to
  enable or disable the path-normalization behaviour.
  
  Revision  Changes    Path
  1.12      +14 -4     avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceUtil.java
  
  Index: SourceUtil.java
  ===================================================================
  RCS file: /home/cvs/avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceUtil.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- SourceUtil.java	15 Jun 2003 16:08:53 -0000	1.11
  +++ SourceUtil.java	14 Jul 2003 08:13:16 -0000	1.12
  @@ -511,7 +511,15 @@
        */
       public static String absolutize(String url1, String url2)
       {
  -        return absolutize(url1, url2, false);
  +        return absolutize(url1, url2, false, true);
  +    }
  +
  +    /**
  +     * Calls absolutize(url1, url2, false, true).
  +     */
  +    public static String absolutize(String url1, String url2, boolean treatAuthorityAsBelongingToPath)
  +    {
  +        return absolutize(url1, url2, treatAuthorityAsBelongingToPath, true);
       }
   
       /**
  @@ -521,8 +529,9 @@
        * @param url2 the location
        * @param treatAuthorityAsBelongingToPath considers the authority to belong to the path. These
        * special kind of URIs are used in the Apache Cocoon project.
  +     * @param normalizePath should the path be normalized, i.e. remove ../ and /./ etc.
        */
  -    public static String absolutize(String url1, String url2, boolean treatAuthorityAsBelongingToPath)
  +    public static String absolutize(String url1, String url2, boolean treatAuthorityAsBelongingToPath, boolean normalizePath)
       {
           if (url1 == null)
               return url2;
  @@ -557,7 +566,8 @@
           // combine the 2 paths
           String path = stripLastSegment(url1Path);
           path = path + (path.endsWith("/") ? "" : "/") + url2Path;
  -        path = normalize(path);
  +        if (normalizePath)
  +            path = normalize(path);
   
           return makeUrl(url1Parts[SCHEME], url1Parts[AUTHORITY], path, url2Parts[QUERY], url2Parts[FRAGMENT]);
       }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org