msmith      01/10/09 21:42:45

  Modified:    src/contrib/webdavgui/src/java/org/apache/webdav/ui
                        LoginFrame.java
               src/contrib/webdavgui/src/java/org/apache/webdav/ui/filechooser/dir
                        SPWebFolder.java
               src/contrib/webdavgui/src/java/org/apache/webdav/ui/lib/methods
                        SPPutMethod.java
               src/contrib/webdavgui/src/java/org/apache/webdav/ui/util
                        SPUtils.java
  Log:
  Misc. fixes to webdav compliance, mostly when checking for a specific response
  code rather than a range of response codes.
  
  Revision  Changes    Path
  1.4       +10 -6     
jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/LoginFrame.java
  
  Index: LoginFrame.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/LoginFrame.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- LoginFrame.java   2001/08/01 02:22:21     1.3
  +++ LoginFrame.java   2001/10/10 04:42:45     1.4
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/LoginFrame.java,v
 1.3 2001/08/01 02:22:21 msmith Exp $
  - * $Revision: 1.3 $
  - * $Date: 2001/08/01 02:22:21 $
  + * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/LoginFrame.java,v
 1.4 2001/10/10 04:42:45 msmith Exp $
  + * $Revision: 1.4 $
  + * $Date: 2001/10/10 04:42:45 $
    *
    * ====================================================================
    *
  @@ -431,11 +431,15 @@
     protected void createWebdavClient(String webdavServer,
           String userName, String userPasswd) {
       int colonIndex = webdavServer.lastIndexOf(":");
  -    String host = webdavServer.substring(0, colonIndex);
  -    String port = webdavServer.substring(colonIndex+1);
  +    String host = "";
  +    String port = "80";
  +    if (colonIndex>0) {
  +        host = webdavServer.substring(0, colonIndex);
  +        port = webdavServer.substring(colonIndex+1);
  +    }
   
       webdavClient = new SPWebdavClient();
  -     webdavClient.setDebug(10);
  +     //webdavClient.setDebug(10);
       webdavClient.startSession(host, Integer.parseInt(port));
        webdavClient.setState(new WebdavState());
   
  
  
  
  1.3       +4 -4      
jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/filechooser/dir/SPWebFolder.java
  
  Index: SPWebFolder.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/filechooser/dir/SPWebFolder.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- SPWebFolder.java  2001/07/17 04:00:47     1.2
  +++ SPWebFolder.java  2001/10/10 04:42:45     1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/filechooser/dir/SPWebFolder.java,v
 1.2 2001/07/17 04:00:47 msmith Exp $
  - * $Revision: 1.2 $
  - * $Date: 2001/07/17 04:00:47 $
  + * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/filechooser/dir/SPWebFolder.java,v
 1.3 2001/10/10 04:42:45 msmith Exp $
  + * $Revision: 1.3 $
  + * $Date: 2001/10/10 04:42:45 $
    *
    * ====================================================================
    *
  @@ -157,7 +157,7 @@
       while (enum.hasMoreElements()){
         String url = (String) enum.nextElement();
         Property p = 
(Property)propFindMethod.getProperty("current-user-privilege-set", url);
  -     System.err.println("current-user-privilege-set is "+p.getClass().getName());
  +       //System.err.println("current-user-privilege-set is 
"+p.getClass().getName());
         CurrentUserPrivilegeSetProperty userPrivilege =
   //       (CurrentUserPrivilegeSetProperty)
    //            propFindMethod.getProperty("current-user-privilege-set", url);
  
  
  
  1.3       +8 -4      
jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/lib/methods/SPPutMethod.java
  
  Index: SPPutMethod.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/lib/methods/SPPutMethod.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- SPPutMethod.java  2001/07/17 04:00:50     1.2
  +++ SPPutMethod.java  2001/10/10 04:42:45     1.3
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/lib/methods/SPPutMethod.java,v
 1.2 2001/07/17 04:00:50 msmith Exp $
  - * $Revision: 1.2 $
  - * $Date: 2001/07/17 04:00:50 $
  + * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/lib/methods/SPPutMethod.java,v
 1.3 2001/10/10 04:42:45 msmith Exp $
  + * $Revision: 1.3 $
  + * $Date: 2001/10/10 04:42:45 $
    *
    * ====================================================================
    *
  @@ -136,7 +136,11 @@
      */
     public void generateHeaders(String host, State state) {
       super.generateHeaders(host, state);
  -    setHeader("If", "(<" + lockToken + ">)");
  +    if(lockToken != null)
  +        setHeader("If", "(<" + lockToken + ">)");
  +    else
  +        System.err.println("ERROR: lockToken is null!");
  +    setHeader("Content-Type", "text/xml");
     }
   
     public String toString()   {
  
  
  
  1.7       +46 -14    
jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/util/SPUtils.java
  
  Index: SPUtils.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/util/SPUtils.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- SPUtils.java      2001/08/01 05:18:21     1.6
  +++ SPUtils.java      2001/10/10 04:42:45     1.7
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/util/SPUtils.java,v
 1.6 2001/08/01 05:18:21 msmith Exp $
  - * $Revision: 1.6 $
  - * $Date: 2001/08/01 05:18:21 $
  + * $Header: 
/home/cvs/jakarta-slide/src/contrib/webdavgui/src/java/org/apache/webdav/ui/util/SPUtils.java,v
 1.7 2001/10/10 04:42:45 msmith Exp $
  + * $Revision: 1.7 $
  + * $Date: 2001/10/10 04:42:45 $
    *
    * ====================================================================
    *
  @@ -343,22 +343,21 @@
           try {
             propFindMethod.executeByName(propList.elements());
             int statusCode = propFindMethod.getStatusCode();
  -          if ( (statusCode != HttpStatus.SC_MULTI_STATUS) &&
  -              (statusCode != HttpStatus.SC_NOT_FOUND) ) {
  -            checkParent = false;
  -            final String title = "Remote Failure";
  -            final String msg = "Unable to access the resource properties 
("+statusCode+")\n"+
  -                         "Resource Path = "+resourceUrlPath;
  -            SPUtils.showMessageDialog(title, msg);
  -          }
  +          
             if ( (statusCode == HttpStatus.SC_NOT_FOUND) &&
                   (propertyName.equals("current-user-privilege-set")) )  {
               checkParent = (! checkParent) ? true: false; //a toggle
               checkedPath = getParentUrl(checkedPath);
             }
  -          if ( (statusCode == HttpStatus.SC_MULTI_STATUS) )  {
  +          else if ( (statusCode >=200 && statusCode<300) )  {
               checkParent = false;
               theProperty = propFindMethod.getProperty(propertyName);
  +          } else {
  +            checkParent = false;
  +            final String title = "Remote Failure";
  +            final String msg = "Unable to access the resource properties 
("+statusCode+")\n"+
  +                         "Resource Path = "+resourceUrlPath;
  +            SPUtils.showMessageDialog(title, msg);
             }
   
           } catch(Exception e)  {
  @@ -388,7 +387,7 @@
          pp.execute();
          int status = pp.getStatusCode();
   
  -       if(status != HttpStatus.SC_MULTI_STATUS &&
  +       if(!(status>=200 && status<300) &&
             status != HttpStatus.SC_NOT_FOUND) {
              SPUtils.showMessageDialog("Remote Failure",
                      "Unable to set property on resource "
  @@ -400,6 +399,39 @@
     }
   
     /*
  +   * Checks to see if the passed in path is valid 
  +   *
  +   * @Returns false if the resourceUrlPath is a collection or the method fails
  +   *
  +   */
  +  public static boolean isValidUrl(HttpClient client,
  +                                String resourceUrlPath)  {
  +
  +    try {
  +      SPPropFindMethod propFindMethod = new SPPropFindMethod(client);
  +      propFindMethod.setPath(resourceUrlPath);
  +
  +      Vector propList = new Vector(2);
  +      propList.add("resourcetype");
  +      propList.add("current-user-privilege-set");
  +
  +      propFindMethod.executeByName(propList.elements());
  +
  +      int statusCode = propFindMethod.getStatusCode();
  +
  +      if (!(statusCode>=200 && statusCode<300 )) {
  +        return false;
  +      } 
  +
  +    }catch (Exception e)  {
  +        return false;
  +    }
  +    return true;
  +
  +  } //getSPResourceNode()
  +
  +
  +  /*
      * Creates a SPResourceNode object from the given client and resourceUrlPath.
      *
      * @Returns null if the resourceUrlPath is a collection or the method fails
  @@ -421,7 +453,7 @@
   
         int statusCode = propFindMethod.getStatusCode();
   
  -      if (statusCode != HttpStatus.SC_MULTI_STATUS) {
  +      if (!(statusCode>=200 && statusCode<300 )) {
           final String title = "Remote Failure";
           final String msg = "Unable to access the remote resource ("
            +statusCode+") "+resourceUrlPath;
  
  
  


Reply via email to