You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by re...@apache.org on 2001/02/15 18:44:14 UTC

cvs commit: jakarta-slide/src/webdav/server/org/apache/slide/webdav/method CopyMethod.java DeleteMethod.java LockMethod.java MoveMethod.java PropFindMethod.java PropPatchMethod.java WebdavMethod.java

remm        01/02/15 09:44:13

  Modified:    src/webdav/server/org/apache/slide/webdav/method
                        CopyMethod.java DeleteMethod.java LockMethod.java
                        MoveMethod.java PropFindMethod.java
                        PropPatchMethod.java WebdavMethod.java
  Removed:     src/webdav/server/org/apache/slide/webdav/common
                        RequestUtil.java WebdavXMLPrinter.java
  Log:
  - Create a set of utils which are shared between the three components of Slide
    to avoid having a version of the file in multiple spots in the repository.
  - Make necessary changes in the classes.
  
  Revision  Changes    Path
  1.6       +14 -13    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/CopyMethod.java
  
  Index: CopyMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/CopyMethod.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- CopyMethod.java	2001/02/11 20:39:24	1.5
  +++ CopyMethod.java	2001/02/15 17:43:56	1.6
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/CopyMethod.java,v 1.5 2001/02/11 20:39:24 remm Exp $
  - * $Revision: 1.5 $
  - * $Date: 2001/02/11 20:39:24 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/CopyMethod.java,v 1.6 2001/02/15 17:43:56 remm Exp $
  + * $Revision: 1.6 $
  + * $Date: 2001/02/15 17:43:56 $
    *
    * ====================================================================
    *
  @@ -68,6 +68,7 @@
   import java.util.*;
   import javax.servlet.*;
   import javax.servlet.http.*;
  +import org.apache.util.XMLPrinter;
   import org.apache.slide.common.*;
   import org.apache.slide.webdav.common.*;
   import org.apache.slide.webdav.*;
  @@ -246,11 +247,11 @@
        */
       protected String generateErrorMessage(CopyMacroException macroException) {
           
  -        WebdavXMLPrinter errorMessage = new WebdavXMLPrinter();
  +        XMLPrinter errorMessage = new XMLPrinter();
           
           errorMessage.writeXMLHeader();
           errorMessage.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.OPENING);
  +                                  XMLPrinter.OPENING);
           
           Enumeration nestedExceptionsList = macroException
               .enumerateExceptions();
  @@ -258,7 +259,7 @@
           while (nestedExceptionsList.hasMoreElements()) {
               
               errorMessage.writeElement("d", "DAV", "response",
  -                                      WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
               
               SlideException ex = (SlideException) nestedExceptionsList
                   .nextElement();
  @@ -294,12 +295,12 @@
               }
               
               errorMessage.writeElement("d", "DAV", "response",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
           }
           
           errorMessage.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.CLOSING);
  +                                  XMLPrinter.CLOSING);
           
           return errorMessage.toString();
           
  @@ -313,15 +314,15 @@
        * @param href Uri of the object
        * @param statusCode HTTP status code of the error
        */
  -    protected void generateStatusText(WebdavXMLPrinter printer, String href,
  +    protected void generateStatusText(XMLPrinter printer, String href,
                                         int statusCode) {
  -        printer.writeElement("d", "href", WebdavXMLPrinter.OPENING);
  +        printer.writeElement("d", "href", XMLPrinter.OPENING);
           printer.writeText(URLEncode(href));
  -        printer.writeElement("d", "href", WebdavXMLPrinter.CLOSING);
  -        printer.writeElement("d", "status", WebdavXMLPrinter.OPENING);
  +        printer.writeElement("d", "href", XMLPrinter.CLOSING);
  +        printer.writeElement("d", "status", XMLPrinter.OPENING);
           printer.writeText("HTTP/1.1 " + statusCode + " "
                             + WebdavStatus.getStatusText(statusCode));
  -        printer.writeElement("d", "status", WebdavXMLPrinter.CLOSING);
  +        printer.writeElement("d", "status", XMLPrinter.CLOSING);
       }
     
   	
  
  
  
  1.6       +14 -13    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/DeleteMethod.java
  
  Index: DeleteMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/DeleteMethod.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- DeleteMethod.java	2001/02/15 12:49:27	1.5
  +++ DeleteMethod.java	2001/02/15 17:43:57	1.6
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/DeleteMethod.java,v 1.5 2001/02/15 12:49:27 juergen Exp $
  - * $Revision: 1.5 $
  - * $Date: 2001/02/15 12:49:27 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/DeleteMethod.java,v 1.6 2001/02/15 17:43:57 remm Exp $
  + * $Revision: 1.6 $
  + * $Date: 2001/02/15 17:43:57 $
    *
    * ====================================================================
    *
  @@ -68,6 +68,7 @@
   import java.util.*;
   import javax.servlet.*;
   import javax.servlet.http.*;
  +import org.apache.util.XMLPrinter;
   import org.apache.slide.common.*;
   import org.apache.slide.webdav.common.*;
   import org.apache.slide.webdav.*;
  @@ -163,11 +164,11 @@
       protected String generateErrorMessage
           (DeleteMacroException macroException) {
           
  -        WebdavXMLPrinter errorMessage = new WebdavXMLPrinter();
  +        XMLPrinter errorMessage = new XMLPrinter();
           
           errorMessage.writeXMLHeader();
           errorMessage.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.OPENING);
  +                                  XMLPrinter.OPENING);
           
           Enumeration nestedExceptionsList =
               macroException.enumerateExceptions();
  @@ -175,7 +176,7 @@
           while (nestedExceptionsList.hasMoreElements()) {
               
               errorMessage.writeElement("d", "DAV", "response",
  -                                      WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
               
               SlideException ex =
                   (SlideException) nestedExceptionsList.nextElement();
  @@ -211,12 +212,12 @@
               }
               
               errorMessage.writeElement("d", "DAV", "response",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
           }
           
           errorMessage.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.CLOSING);
  +                                  XMLPrinter.CLOSING);
           
           return errorMessage.toString();
           
  @@ -230,15 +231,15 @@
        * @param href Uri of the object
        * @param statusCode HTTP status code of the error
        */
  -    protected void generateStatusText(WebdavXMLPrinter printer, String href,
  +    protected void generateStatusText(XMLPrinter printer, String href,
                                         int statusCode) {
  -        printer.writeElement("d", "href", WebdavXMLPrinter.OPENING);
  +        printer.writeElement("d", "href", XMLPrinter.OPENING);
           printer.writeText(URLEncode(href));
  -        printer.writeElement("d", "href", WebdavXMLPrinter.CLOSING);
  -        printer.writeElement("d", "status", WebdavXMLPrinter.OPENING);
  +        printer.writeElement("d", "href", XMLPrinter.CLOSING);
  +        printer.writeElement("d", "status", XMLPrinter.OPENING);
           printer.writeText("HTTP/1.1 " + statusCode + " "
                             + WebdavStatus.getStatusText(statusCode));
  -        printer.writeElement("d", "status", WebdavXMLPrinter.CLOSING);
  +        printer.writeElement("d", "status", XMLPrinter.CLOSING);
       }
      
       
  
  
  
  1.6       +29 -47    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/LockMethod.java
  
  Index: LockMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/LockMethod.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- LockMethod.java	2001/02/11 20:39:24	1.5
  +++ LockMethod.java	2001/02/15 17:43:58	1.6
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/LockMethod.java,v 1.5 2001/02/11 20:39:24 remm Exp $
  - * $Revision: 1.5 $
  - * $Date: 2001/02/11 20:39:24 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/LockMethod.java,v 1.6 2001/02/15 17:43:58 remm Exp $
  + * $Revision: 1.6 $
  + * $Date: 2001/02/15 17:43:58 $
    *
    * ====================================================================
    *
  @@ -70,6 +70,8 @@
   import javax.servlet.http.*;
   import org.w3c.dom.*;
   import org.xml.sax.InputSource;
  +import org.apache.util.XMLPrinter;
  +import org.apache.util.DOMWriter;
   import org.apache.slide.common.*;
   import org.apache.slide.webdav.common.*;
   import org.apache.slide.webdav.*;
  @@ -78,7 +80,6 @@
   import org.apache.slide.content.*;
   import org.apache.slide.security.AccessDeniedException;
   import org.apache.slide.structure.*;
  -import org.apache.slide.util.dom.DOMWriter;
   import javax.xml.parsers.DocumentBuilder;
   
   /**
  @@ -599,84 +600,65 @@
           
           // Generating XML response
           
  -        WebdavXMLPrinter generatedXML = new WebdavXMLPrinter();
  +        XMLPrinter generatedXML = new XMLPrinter();
           
           generatedXML.writeXMLHeader();
  -        generatedXML.writeElement("d", "DAV:", "prop",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", "DAV:", "prop", XMLPrinter.OPENING);
           
           generatedXML.writeElement("d", null, "lockdiscovery",
  -                                  WebdavXMLPrinter.OPENING);
  +                                  XMLPrinter.OPENING);
           
  -        generatedXML.writeElement("d", null, "activelock",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "activelock", XMLPrinter.OPENING);
           
  -        generatedXML.writeElement("d", null, "locktype",
  -                                  WebdavXMLPrinter.OPENING);
  -        generatedXML.writeElement("d", null, "write",
  -                                  WebdavXMLPrinter.NO_CONTENT);
  -        generatedXML.writeElement("d", null, "locktype",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "locktype", XMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "write", XMLPrinter.NO_CONTENT);
  +        generatedXML.writeElement("d", null, "locktype", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "lockscope",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "lockscope", XMLPrinter.OPENING);
           
           if (token.isExclusive()) {
               generatedXML.writeElement("d", null, "exclusive",
  -                                      WebdavXMLPrinter.NO_CONTENT);
  +                                      XMLPrinter.NO_CONTENT);
           } else {
               generatedXML.writeElement("d", null, "shared",
  -                                      WebdavXMLPrinter.NO_CONTENT);
  +                                      XMLPrinter.NO_CONTENT);
           }
  -        generatedXML.writeElement("d", null, "lockscope",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "lockscope", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "depth",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "depth", XMLPrinter.OPENING);
           if (token.isInheritable()) {
               generatedXML.writeText("Infinity");
           } else {
               generatedXML.writeText("0");
           }
  -        generatedXML.writeElement("d", null, "depth",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "depth", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "owner",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "owner", XMLPrinter.OPENING);
           //generatedXML.writeText(lockInfo_lockOwner);
           generatedXML.writeText(req.getServletPath() + token.getSubjectUri());
  -        generatedXML.writeElement("d", null, "owner",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "owner", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "timeout",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "timeout", XMLPrinter.OPENING);
           generatedXML.writeText("Second-"
                                  + (new Long((token.getExpirationDate().getTime()
                                               - (new Date()).getTime())/1000))
                                  .toString());
  -        generatedXML.writeElement("d", null, "timeout",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "timeout", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "locktoken",
  -                                  WebdavXMLPrinter.OPENING);
  -        generatedXML.writeElement("d", null, "href",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "locktoken", XMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "href", XMLPrinter.OPENING);
           // Put here the token Id
           generatedXML.writeText("opaquelocktoken:" + token.getLockId());
           
  -        generatedXML.writeElement("d", null, "href",
  -                                  WebdavXMLPrinter.CLOSING);
  -        generatedXML.writeElement("d", null, "locktoken",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "href", XMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "locktoken", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "activelock",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "activelock", XMLPrinter.CLOSING);
           
           generatedXML.writeElement("d", null, "lockdiscovery",
  -                                  WebdavXMLPrinter.CLOSING);
  +                                  XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement("d", null, "prop",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "prop", XMLPrinter.CLOSING);
           
           
           try {
  
  
  
  1.6       +14 -13    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/MoveMethod.java
  
  Index: MoveMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/MoveMethod.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- MoveMethod.java	2001/02/11 20:39:24	1.5
  +++ MoveMethod.java	2001/02/15 17:43:59	1.6
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/MoveMethod.java,v 1.5 2001/02/11 20:39:24 remm Exp $
  - * $Revision: 1.5 $
  - * $Date: 2001/02/11 20:39:24 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/MoveMethod.java,v 1.6 2001/02/15 17:43:59 remm Exp $
  + * $Revision: 1.6 $
  + * $Date: 2001/02/15 17:43:59 $
    *
    * ====================================================================
    *
  @@ -68,6 +68,7 @@
   import java.util.*;
   import javax.servlet.*;
   import javax.servlet.http.*;
  +import org.apache.util.XMLPrinter;
   import org.apache.slide.common.*;
   import org.apache.slide.webdav.common.*;
   import org.apache.slide.webdav.*;
  @@ -248,11 +249,11 @@
        */
       protected String generateErrorMessage(MacroException macroException) {
           
  -        WebdavXMLPrinter errorMessage = new WebdavXMLPrinter();
  +        XMLPrinter errorMessage = new XMLPrinter();
           
           errorMessage.writeXMLHeader();
           errorMessage.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.OPENING);
  +                                  XMLPrinter.OPENING);
           
           Enumeration nestedExceptionsList =
               macroException.enumerateExceptions();
  @@ -260,7 +261,7 @@
           while (nestedExceptionsList.hasMoreElements()) {
               
               errorMessage.writeElement("d", "DAV", "response",
  -                                      WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
               
               SlideException ex =
                   (SlideException) nestedExceptionsList.nextElement();
  @@ -296,12 +297,12 @@
               }
               
               errorMessage.writeElement("d", "DAV", "response",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
           }
           
           errorMessage.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.CLOSING);
  +                                  XMLPrinter.CLOSING);
           
           return errorMessage.toString();
           
  @@ -315,15 +316,15 @@
        * @param href Uri of the object
        * @param statusCode HTTP status code of the error
        */
  -    protected void generateStatusText(WebdavXMLPrinter printer, String href,
  +    protected void generateStatusText(XMLPrinter printer, String href,
                                         int statusCode) {
  -        printer.writeElement("d", "href", WebdavXMLPrinter.OPENING);
  +        printer.writeElement("d", "href", XMLPrinter.OPENING);
           printer.writeText(URLEncode(href));
  -        printer.writeElement("d", "href", WebdavXMLPrinter.CLOSING);
  -        printer.writeElement("d", "status", WebdavXMLPrinter.OPENING);
  +        printer.writeElement("d", "href", XMLPrinter.CLOSING);
  +        printer.writeElement("d", "status", XMLPrinter.OPENING);
           printer.writeText("HTTP/1.1 " + statusCode + " "
                             + WebdavStatus.getStatusText(statusCode));
  -        printer.writeElement("d", "status", WebdavXMLPrinter.CLOSING);
  +        printer.writeElement("d", "status", XMLPrinter.CLOSING);
       }
       
       
  
  
  
  1.7       +66 -70    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropFindMethod.java
  
  Index: PropFindMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropFindMethod.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- PropFindMethod.java	2001/02/11 20:39:24	1.6
  +++ PropFindMethod.java	2001/02/15 17:44:01	1.7
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropFindMethod.java,v 1.6 2001/02/11 20:39:24 remm Exp $
  - * $Revision: 1.6 $
  - * $Date: 2001/02/11 20:39:24 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropFindMethod.java,v 1.7 2001/02/15 17:44:01 remm Exp $
  + * $Revision: 1.7 $
  + * $Date: 2001/02/15 17:44:01 $
    *
    * ====================================================================
    *
  @@ -70,6 +70,7 @@
   import javax.servlet.http.*;
   import org.w3c.dom.*;
   import org.xml.sax.InputSource;
  +import org.apache.util.XMLPrinter;
   import org.apache.slide.authenticate.CredentialsToken;
   import org.apache.slide.common.*;
   import org.apache.slide.security.AccessDeniedException;
  @@ -327,12 +328,12 @@
           }
           
           // Create multistatus object
  -        WebdavXMLPrinter generatedXML = new WebdavXMLPrinter(resp.getWriter());
  +        XMLPrinter generatedXML = new XMLPrinter(resp.getWriter());
           
           generatedXML.writeXMLHeader();
           generatedXML.writeElement(null, "multistatus"
                                     + generateNamespaceDeclarations(),
  -                                  WebdavXMLPrinter.OPENING);
  +                                  XMLPrinter.OPENING);
           
           if (resource != null) {
               if (depth == 0) {
  @@ -382,7 +383,7 @@
           }
           
           generatedXML.writeElement(null, "multistatus",
  -                                  WebdavXMLPrinter.CLOSING);
  +                                  XMLPrinter.CLOSING);
           
           // Send remaining data
           generatedXML.sendData();
  @@ -398,10 +399,10 @@
        * @exception WebdavException
        */
       protected void parsePropertiesOfObject(ObjectNode object,
  -                                           WebdavXMLPrinter generatedXML)
  +                                           XMLPrinter generatedXML)
       throws WebdavException {
           
  -        generatedXML.writeElement(null, "response", WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "response", XMLPrinter.OPENING);
           
           String status = new String("HTTP/1.1 " + WebdavStatus.SC_OK + " "
                                      + WebdavStatus.getStatusText
  @@ -414,7 +415,7 @@
           NodeLock objectLockToken = null;
           
           try {
  -            generatedXML.writeElement(null, "href", WebdavXMLPrinter.OPENING);
  +            generatedXML.writeElement(null, "href", XMLPrinter.OPENING);
               revisionDescriptors =
                   content.retrieve(slideToken, object.getUri());
               
  @@ -467,7 +468,7 @@
                   
               }
               
  -            generatedXML.writeElement(null, "href", WebdavXMLPrinter.CLOSING);
  +            generatedXML.writeElement(null, "href", XMLPrinter.CLOSING);
               
               Enumeration lockTokens = lock.enumerateLocks(slideToken,
                                                            object.getUri());
  @@ -497,8 +498,8 @@
               
               // Show properties / values for current object.
               generatedXML.writeElement(null, "propstat",
  -                                      WebdavXMLPrinter.OPENING);
  -            generatedXML.writeElement(null, "prop", WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
  +            generatedXML.writeElement(null, "prop", XMLPrinter.OPENING);
               
               status = new String("HTTP/1.1 " + WebdavStatus.SC_OK
                                   + " " + WebdavStatus.getStatusText
  @@ -511,10 +512,10 @@
               
               // Supported locks
               generatedXML.writeElement(null, "supportedlock",
  -                                      WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
               generatedXML.writeText(SUPPORTED_LOCK);
               generatedXML.writeElement(null, "supportedlock",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
               // Other properties
               Enumeration propertyList =
  @@ -534,26 +535,26 @@
                           generatedXML.writeElement
                               (namespaceAbbrev, namespace,
                                currentProperty.getName(),
  -                             WebdavXMLPrinter.NO_CONTENT);
  +                             XMLPrinter.NO_CONTENT);
                       } else {
                           generatedXML.writeElement
                               (namespaceAbbrev, namespace,
                                currentProperty.getName(),
  -                             WebdavXMLPrinter.OPENING);
  +                             XMLPrinter.OPENING);
                           generatedXML.writeText
                               (currentPropertyValue.toString());
                           generatedXML.writeElement
                               (namespaceAbbrev, namespace,
                                currentProperty.getName(),
  -                             WebdavXMLPrinter.CLOSING);
  +                             XMLPrinter.CLOSING);
                       }
                   }
               }
               
  -            generatedXML.writeElement(null, "prop", WebdavXMLPrinter.CLOSING);
  +            generatedXML.writeElement(null, "prop", XMLPrinter.CLOSING);
               generatedXML.writeProperty(null, "status", status);
               generatedXML.writeElement(null, "propstat",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
               break;
           case FIND_PROPERTY_NAMES :
  @@ -564,15 +565,15 @@
                                   (WebdavStatus.SC_OK));
               
               generatedXML.writeElement(null, "propstat",
  -                                      WebdavXMLPrinter.OPENING);
  -            generatedXML.writeElement(null, "prop", WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
  +            generatedXML.writeElement(null, "prop", XMLPrinter.OPENING);
               
               // Lock information
               
               generatedXML.writeElement(null, "lockdiscovery",
  -                                      WebdavXMLPrinter.NO_CONTENT);
  +                                      XMLPrinter.NO_CONTENT);
               generatedXML.writeElement(null, "supportedlock",
  -                                      WebdavXMLPrinter.NO_CONTENT);
  +                                      XMLPrinter.NO_CONTENT);
               
               // Then, add this resource's custom properties
               propertyList = revisionDescriptor.enumerateProperties();
  @@ -587,14 +588,14 @@
                       generatedXML.writeElement
                           (namespaceAbbrev, namespace,
                            currentProperty.getName(),
  -                         WebdavXMLPrinter.NO_CONTENT);
  +                         XMLPrinter.NO_CONTENT);
                   }
               }
               
  -            generatedXML.writeElement(null, "prop", WebdavXMLPrinter.CLOSING);
  +            generatedXML.writeElement(null, "prop", XMLPrinter.CLOSING);
               generatedXML.writeProperty(null, "status", status);
               generatedXML.writeElement(null, "propstat",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
               break;
           case FIND_BY_PROPERTY :
  @@ -603,8 +604,8 @@
               propertyList = propertyVector.elements();
               
               generatedXML.writeElement(null, "propstat",
  -                                      WebdavXMLPrinter.OPENING);
  -            generatedXML.writeElement(null, "prop", WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
  +            generatedXML.writeElement(null, "prop", XMLPrinter.OPENING);
               
               status = new String("HTTP/1.1 " + WebdavStatus.SC_OK
                                   + " " + WebdavStatus.getStatusText
  @@ -631,10 +632,10 @@
                               (NodeProperty.DEFAULT_NAMESPACE))) {
                       // Supported locks
                       generatedXML.writeElement(null, "supportedlock",
  -                                              WebdavXMLPrinter.OPENING);
  +                                              XMLPrinter.OPENING);
                       generatedXML.writeText(SUPPORTED_LOCK);
                       generatedXML.writeElement(null, "supportedlock",
  -                                              WebdavXMLPrinter.CLOSING);
  +                                              XMLPrinter.CLOSING);
                   } else {
                       
                       // Search in the custom properties
  @@ -650,18 +651,18 @@
                               generatedXML.writeElement
                                   (property.namespaceAbbrev, null,
                                    currentProperty.getName(),
  -                                 WebdavXMLPrinter.NO_CONTENT);
  +                                 XMLPrinter.NO_CONTENT);
                           } else {
                               generatedXML.writeElement
                                   (property.namespaceAbbrev, null,
                                    currentProperty.getName(),
  -                                 WebdavXMLPrinter.OPENING);
  +                                 XMLPrinter.OPENING);
                               generatedXML.writeText
                                   (currentPropertyValue.toString());
                               generatedXML.writeElement
                                   (property.namespaceAbbrev, null,
                                    currentProperty.getName(),
  -                                 WebdavXMLPrinter.CLOSING);
  +                                 XMLPrinter.CLOSING);
                           }
                       } else {
                           propertiesNotFoundVector.addElement(propertyName);
  @@ -670,10 +671,10 @@
                   
               }
               
  -            generatedXML.writeElement(null, "prop", WebdavXMLPrinter.CLOSING);
  +            generatedXML.writeElement(null, "prop", XMLPrinter.CLOSING);
               generatedXML.writeProperty(null, "status", status);
               generatedXML.writeElement(null, "propstat",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
               
               Enumeration propertiesNotFoundList =
                   propertiesNotFoundVector.elements();
  @@ -685,28 +686,28 @@
                                       (WebdavStatus.SC_NOT_FOUND));
                   
                   generatedXML.writeElement(null, "propstat",
  -                                          WebdavXMLPrinter.OPENING);
  +                                          XMLPrinter.OPENING);
                   generatedXML.writeElement(null, "prop",
  -                                          WebdavXMLPrinter.OPENING);
  +                                          XMLPrinter.OPENING);
                   
                   while (propertiesNotFoundList.hasMoreElements()) {
                       generatedXML.writeElement
                           (null, (String) propertiesNotFoundList.nextElement(),
  -                         WebdavXMLPrinter.NO_CONTENT);
  +                         XMLPrinter.NO_CONTENT);
                   }
                   
                   generatedXML.writeElement(null, "prop",
  -                                          WebdavXMLPrinter.CLOSING);
  +                                          XMLPrinter.CLOSING);
                   generatedXML.writeProperty(null, "status", status);
                   generatedXML.writeElement(null, "propstat",
  -                                          WebdavXMLPrinter.CLOSING);
  +                                          XMLPrinter.CLOSING);
                   
               }
               
               break;
           }
           
  -        generatedXML.writeElement(null, "response", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "response", XMLPrinter.CLOSING);
           
       }
       
  @@ -836,63 +837,58 @@
        * @exception WebdavException Something is wrong with the servlet container
        */
       private void showLockDiscoveryInfo(NodeLock token,
  -                                       WebdavXMLPrinter generatedXML)
  +                                       XMLPrinter generatedXML)
           throws WebdavException {
           
  -        generatedXML.writeElement(null, "lockdiscovery",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "lockdiscovery", XMLPrinter.OPENING);
           
  -        generatedXML.writeElement(null, "activelock",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "activelock", XMLPrinter.OPENING);
           
  -        generatedXML.writeElement(null, "locktype", WebdavXMLPrinter.OPENING);
  -        generatedXML.writeElement(null, "write", WebdavXMLPrinter.NO_CONTENT);
  -        generatedXML.writeElement(null, "locktype", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "locktype", XMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "write", XMLPrinter.NO_CONTENT);
  +        generatedXML.writeElement(null, "locktype", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "lockscope", WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "lockscope", XMLPrinter.OPENING);
           if (token.isExclusive()) {
               generatedXML.writeElement(null, "exclusive",
  -                                      WebdavXMLPrinter.NO_CONTENT);
  +                                      XMLPrinter.NO_CONTENT);
           } else {
  -            generatedXML.writeElement(null, "shared",
  -                                      WebdavXMLPrinter.NO_CONTENT);
  +            generatedXML.writeElement(null, "shared", XMLPrinter.NO_CONTENT);
           }
  -        generatedXML.writeElement(null, "lockscope", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "lockscope", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "depth", WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "depth", XMLPrinter.OPENING);
           if (token.isInheritable()) {
               generatedXML.writeText("Infinity");
           } else {
               generatedXML.writeText("0");
           }
  -        generatedXML.writeElement(null, "depth", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "depth", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "owner", WebdavXMLPrinter.OPENING);
  -        generatedXML.writeElement(null, "href", WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "owner", XMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "href", XMLPrinter.OPENING);
           generatedXML.writeText
               (URLEncode(req.getServletPath() + token.getSubjectUri()));
  -        generatedXML.writeElement(null, "href", WebdavXMLPrinter.CLOSING);
  -        generatedXML.writeElement(null, "owner", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "href", XMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "owner", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "timeout", WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "timeout", XMLPrinter.OPENING);
           generatedXML.writeText("Second-"
                                  + (new Long((token.getExpirationDate().getTime()
                                               - (new Date()).getTime())/1000))
                                  .toString());
  -        generatedXML.writeElement(null, "timeout", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "timeout", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "locktoken", WebdavXMLPrinter.OPENING);
  -        generatedXML.writeElement(null, "href", WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "locktoken", XMLPrinter.OPENING);
  +        generatedXML.writeElement(null, "href", XMLPrinter.OPENING);
           // Put here the token Id
           generatedXML.writeText("opaquelocktoken:" + token.getLockId());
  -        generatedXML.writeElement(null, "href", WebdavXMLPrinter.CLOSING);
  -        generatedXML.writeElement(null, "locktoken", WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "href", XMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "locktoken", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "activelock",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "activelock", XMLPrinter.CLOSING);
           
  -        generatedXML.writeElement(null, "lockdiscovery",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement(null, "lockdiscovery", XMLPrinter.CLOSING);
           
       }
       
  
  
  
  1.10      +25 -37    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java
  
  Index: PropPatchMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- PropPatchMethod.java	2001/02/14 12:36:25	1.9
  +++ PropPatchMethod.java	2001/02/15 17:44:02	1.10
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java,v 1.9 2001/02/14 12:36:25 juergen Exp $
  - * $Revision: 1.9 $
  - * $Date: 2001/02/14 12:36:25 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PropPatchMethod.java,v 1.10 2001/02/15 17:44:02 remm Exp $
  + * $Revision: 1.10 $
  + * $Date: 2001/02/15 17:44:02 $
    *
    * ====================================================================
    *
  @@ -70,9 +70,10 @@
   import javax.servlet.http.*;
   import org.w3c.dom.*;
   import org.xml.sax.InputSource;
  +import org.apache.util.XMLPrinter;
  +import org.apache.util.DOMWriter;
   import org.apache.slide.authenticate.CredentialsToken;
   import org.apache.slide.common.*;
  -import org.apache.slide.util.dom.DOMWriter;
   import org.apache.slide.security.AccessDeniedException;
   import org.apache.slide.webdav.common.*;
   import org.apache.slide.webdav.*;
  @@ -488,14 +489,13 @@
           throws WebdavException {
           
           // Create multistatus object
  -        WebdavXMLPrinter generatedXML = new WebdavXMLPrinter();
  +        XMLPrinter generatedXML = new XMLPrinter();
           
           generatedXML.writeXMLHeader();
           generatedXML.writeElement("d", "DAV", "multistatus",
  -                                  WebdavXMLPrinter.OPENING);
  +                                  XMLPrinter.OPENING);
           
  -        generatedXML.writeElement("d", null, "response",
  -                                  WebdavXMLPrinter.OPENING);
  +        generatedXML.writeElement("d", null, "response", XMLPrinter.OPENING);
           generatedXML.writeProperty("d", null, "href", URLEncode(requestUri));
           
           
  @@ -508,19 +508,17 @@
           while(propertyList.hasMoreElements()) {
               Property property = (Property) propertyList.nextElement();
               generatedXML.writeElement("d", null, "propstat",
  -                                      WebdavXMLPrinter.OPENING);
  -            generatedXML.writeElement("d", null, "prop",
  -                                      WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
  +            generatedXML.writeElement("d", null, "prop", XMLPrinter.OPENING);
               generatedXML.writeElement(property.namespaceAbbrev,
                                         property.namespace, property.name,
  -                                      WebdavXMLPrinter.NO_CONTENT);
  -            generatedXML.writeElement("d", null, "prop",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.NO_CONTENT);
  +            generatedXML.writeElement("d", null, "prop", XMLPrinter.CLOSING);
               generatedXML.writeProperty
                   ("d", null, "status", "HTTP/1.1 " + property.status + " "
                    + WebdavStatus.getStatusText(property.status));
               generatedXML.writeElement("d", null, "propstat",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
           }
           
           propertyList = propertiesToRemove.elements();
  @@ -528,40 +526,30 @@
           while(propertyList.hasMoreElements()) {
               Property property = (Property) propertyList.nextElement();
               generatedXML.writeElement("d", null, "propstat",
  -                                      WebdavXMLPrinter.OPENING);
  -            generatedXML.writeElement("d", null, "prop",
  -                                      WebdavXMLPrinter.OPENING);
  +                                      XMLPrinter.OPENING);
  +            generatedXML.writeElement("d", null, "prop", XMLPrinter.OPENING);
               generatedXML.writeElement(property.namespaceAbbrev,
                                         property.namespace, property.name,
  -                                      WebdavXMLPrinter.NO_CONTENT);
  -            generatedXML.writeElement("d", null, "prop",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.NO_CONTENT);
  +            generatedXML.writeElement("d", null, "prop", XMLPrinter.CLOSING);
               generatedXML.writeProperty
                   ("d", null, "status", "HTTP/1.1 " + property.status + " "
                    + WebdavStatus.getStatusText(property.status));
               generatedXML.writeElement("d", null, "propstat",
  -                                      WebdavXMLPrinter.CLOSING);
  +                                      XMLPrinter.CLOSING);
           }
           
  -        generatedXML.writeElement("d", null, "response",
  -                                  WebdavXMLPrinter.CLOSING);
  -        generatedXML.writeElement("d", "multistatus",
  -                                  WebdavXMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", null, "response", XMLPrinter.CLOSING);
  +        generatedXML.writeElement("d", "multistatus", XMLPrinter.CLOSING);
           
  -    try {
  +        try {
               Writer writer = resp.getWriter();
  -        
  -//System.out.println();
  -//System.out.println("PropPatch XML = " + generatedXML.toString());
  -//System.out.println();
  -        
  -        
               writer.write(generatedXML.toString());
  -        writer.flush();
  -    } catch (Exception e) {
  +            writer.flush();
  +        } catch (Exception e) {
               e.printStackTrace();
  -        throw new WebdavException(WebdavStatus.SC_INTERNAL_SERVER_ERROR);
  -    }
  +            throw new WebdavException(WebdavStatus.SC_INTERNAL_SERVER_ERROR);
  +        }
           
       }
       
  
  
  
  1.11      +7 -87     jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/WebdavMethod.java
  
  Index: WebdavMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/WebdavMethod.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- WebdavMethod.java	2001/02/11 20:39:25	1.10
  +++ WebdavMethod.java	2001/02/15 17:44:04	1.11
  @@ -1,7 +1,7 @@
   /*
  - * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/WebdavMethod.java,v 1.10 2001/02/11 20:39:25 remm Exp $
  - * $Revision: 1.10 $
  - * $Date: 2001/02/11 20:39:25 $
  + * $Header: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/WebdavMethod.java,v 1.11 2001/02/15 17:44:04 remm Exp $
  + * $Revision: 1.11 $
  + * $Date: 2001/02/15 17:44:04 $
    *
    * ====================================================================
    *
  @@ -74,6 +74,8 @@
   import javax.xml.parsers.DocumentBuilder;
   import javax.xml.parsers.ParserConfigurationException;
   import org.w3c.dom.*;
  +import org.apache.util.URLUtil;
  +import org.apache.util.MD5Encoder;
   import org.apache.slide.common.*;
   import org.apache.slide.authenticate.*;
   import org.apache.slide.structure.*;
  @@ -83,7 +85,6 @@
   import org.apache.slide.security.*;
   import org.apache.slide.webdav.common.*;
   import org.apache.slide.webdav.*;
  -import org.apache.slide.util.MD5Encoder;
   
   /**
    * WebDAV method.
  @@ -233,40 +234,6 @@
       protected static String managerServletPath = "/manager/";
       
       
  -    /**
  -     * Array containing the safe characters set.
  -     */
  -    protected static BitSet safeCharacters;
  -
  -
  -    protected static final char[] hexadecimal = 
  -    {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
  -     'A', 'B', 'C', 'D', 'E', 'F'};
  -
  -
  -    // ----------------------------------------------------- Static Initializer
  -
  -
  -    static {
  -	safeCharacters = new BitSet(256);
  -	int i;
  -	for (i = 'a'; i <= 'z'; i++) {
  -	    safeCharacters.set(i);
  -	}
  -	for (i = 'A'; i <= 'Z'; i++) {
  -	    safeCharacters.set(i);
  -	}
  -	for (i = '0'; i <= '9'; i++) {
  -	    safeCharacters.set(i);
  -	}
  -	safeCharacters.set('-');
  -	safeCharacters.set('_');
  -	safeCharacters.set('.');
  -	safeCharacters.set('*');
  -	safeCharacters.set('/');
  -    }
  -    
  -    
       // ----------------------------------------------------------- Constructors
       
       
  @@ -608,7 +575,7 @@
           String normalized = path;
           if (normalized.indexOf('%') >= 0)
               // FIXME: Use configurable encoding here.
  -            normalized = RequestUtil.URLDecode(normalized, "UTF8");
  +            normalized = URLUtil.URLDecode(normalized, "UTF8");
           if (normalized == null)
               return (null);
           
  @@ -660,55 +627,8 @@
        * @param path Path which has to be rewiten
        */
       protected static String URLEncode(String path) {
  -
  -        /**
  -         * Note: This code portion is very similar to URLEncoder.encode.
  -         * Unfortunately, there is no way to specify to the URLEncoder which
  -         * characters should be encoded. Here, ' ' should be encoded as "%20"
  -         * and '/' shouldn't be encoded.
  -         */
  -
  -	int maxBytesPerChar = 10;
  -        int caseDiff = ('a' - 'A');
  -        StringBuffer rewrittenPath = new StringBuffer(path.length());
  -	ByteArrayOutputStream buf = new ByteArrayOutputStream(maxBytesPerChar);
  -        OutputStreamWriter writer = null;
  -        try {
  -            // FIXME: Use the same encoding as the one specified above
  -            writer = new OutputStreamWriter(buf, "UTF8");
  -        } catch (Exception e) {
  -            e.printStackTrace();
  -            writer = new OutputStreamWriter(buf);
  -        }
  -
  -        for (int i = 0; i < path.length(); i++) {
  -            int c = (int) path.charAt(i);
  -            if (safeCharacters.get(c)) {
  -                rewrittenPath.append((char)c);
  -            } else {
  -                // convert to external encoding before hex conversion
  -                try {
  -                    writer.write(c);
  -                    writer.flush();
  -                } catch(IOException e) {
  -                    buf.reset();
  -                    continue;
  -                }
  -                byte[] ba = buf.toByteArray();
  -                for (int j = 0; j < ba.length; j++) {
  -                    // Converting each byte in the buffer
  -                    byte toEncode = ba[j];
  -                    rewrittenPath.append('%');
  -                    int low = (int) (toEncode & 0x0f);
  -                    int high = (int) ((toEncode & 0xf0) >> 4);
  -                    rewrittenPath.append(hexadecimal[high]);
  -                    rewrittenPath.append(hexadecimal[low]);
  -                }
  -                buf.reset();
  -            }
  -        }
   
  -        return rewrittenPath.toString();
  +        return URLUtil.URLEncode(path, "UTF8");
   
       }