cmlenz      02/03/02 08:24:15

  Modified:    src/webdav/server/org/apache/slide/webdav/method Tag:
                        SLIDE_1_0 PutMethod.java
  Log:
  Porting bugfixes/enhancements from the HEAD branch:
  - Committed by juergen, 01/12/07 05:50:56
    "1) BUG: PropPatch did not rollback, if one action could not be executed
     2) The property itself decides, if it is read-only or can be modified by
        propPatch
     3) all live properties have get/set methods, they are now used."
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.20.2.1  +21 -47    
jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java
  
  Index: PutMethod.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java,v
  retrieving revision 1.20
  retrieving revision 1.20.2.1
  diff -u -r1.20 -r1.20.2.1
  --- PutMethod.java    11 Oct 2001 08:24:52 -0000      1.20
  +++ PutMethod.java    2 Mar 2002 16:24:15 -0000       1.20.2.1
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java,v
 1.20 2001/10/11 08:24:52 remm Exp $
  - * $Revision: 1.20 $
  - * $Date: 2001/10/11 08:24:52 $
  + * $Header: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/PutMethod.java,v
 1.20.2.1 2002/03/02 16:24:15 cmlenz Exp $
  + * $Revision: 1.20.2.1 $
  + * $Date: 2002/03/02 16:24:15 $
    *
    * ====================================================================
    *
  @@ -175,34 +175,24 @@
                   //revisionContent.setContent(req.getReader());
                   revisionContent.setContent(req.getInputStream());
                   
  -                NodeProperty property = null;
  -                
                   // Get content length
  -                property = new NodeProperty
  -                    ("getcontentlength", new Long(req.getContentLength()),
  -                     true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setContentLength(req.getContentLength());
                   
                   // Last modification date
                   revisionDescriptor.setLastModified(new Date());
                   
                   // Etag generation
  -                String etag = resourcePath.hashCode() + "_"
  +                revisionDescriptor.setETag(resourcePath.hashCode() + "_"
                       + revisionNumber.hashCode() + "_"
  -                    + revisionDescriptor.getContentLength();
  -                property = new NodeProperty("getetag", etag, true);
  -                revisionDescriptor.setProperty(property);
  +                    + revisionDescriptor.getContentLength());
                   
                   // Normally assume the 'getcontentlanguage' and
                   // 'getcontenttype' are set, however, before we clear the
                   // 'resourcetype' need to check for the case when a
                   // 'lock-null' is created just before the initial PUT. In
                   // that case need to add the missing properties.
  -                property = revisionDescriptor.getProperty("resourcetype");
  -                if (((String) property.getValue()).equals("<lock-null/>")) {
  -                    property =
  -                        new NodeProperty("getcontentlanguage", "en", true);
  -                    revisionDescriptor.setProperty(property);
  +                if (revisionDescriptor.getResourceType().equals("<lock-null/>")) {
  +                    revisionDescriptor.setContentLanguage("en");
                       
                       String contentType = req.getContentType();
                       if (contentType == null) {
  @@ -212,14 +202,11 @@
                       if (contentType == null) {
                           contentType = getConfig().getDefaultMimeType();
                       }
  -                    property = new NodeProperty("getcontenttype", contentType,
  -                                                true);
  -                    revisionDescriptor.setProperty(property);
  +                    revisionDescriptor.setContentType(contentType);
                   }
                   
                   // Resource type
  -                property = new NodeProperty("resourcetype", "", true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setResourceType("");
                   
                   content.create(slideToken, resourcePath, revisionDescriptor,
                                  revisionContent);
  @@ -231,7 +218,7 @@
                   e.printStackTrace();
                   //
                   // make sure the transaction is aborted
  -                // throw any WebDAV exception to indicate 
  +                // throw any WebDAV exception to indicate
                   // the transaction wants to be aborted
                   //
                   throw new WebdavException(WebdavStatus.SC_ACCEPTED, false);
  @@ -245,27 +232,21 @@
                   NodeRevisionDescriptor revisionDescriptor =
                       new NodeRevisionDescriptor(req.getContentLength());
                   
  -                NodeProperty property = null;
  +                //NodeProperty property = null;
                   
                   // Creation date
                   
                   // Resource type
  -                property = new NodeProperty("resourcetype", "", true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setResourceType("");
                   
                   // Source
  -                property = new NodeProperty("source", "", true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setSource("");
                   
                   // Get content language
  -                property = new NodeProperty("getcontentlanguage", "en", true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setContentLanguage("en");
                   
                   // Get content length
  -                property = new NodeProperty
  -                    ("getcontentlength",
  -                     new Long(req.getContentLength()), true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setContentLength(req.getContentLength());
                   
                   // Get content type
                   String contentType = req.getContentType();
  @@ -276,28 +257,21 @@
                   if (contentType == null) {
                       contentType = getConfig().getDefaultMimeType();
                   }
  -                property = new NodeProperty("getcontenttype", contentType,
  -                                            true);
  -                revisionDescriptor.setProperty(property);
  +                revisionDescriptor.setContentType(contentType);
                   
                   // Last modification date
                   revisionDescriptor.setLastModified(new Date());
                   
                   // Etag generation
  -                String etag = resourcePath.hashCode() + "_"
  +                revisionDescriptor.setETag(resourcePath.hashCode() + "_"
                       + (new NodeRevisionNumber()).hashCode() + "_"
  -                    + req.getContentLength();
  -                property = new NodeProperty("getetag", etag, true);
  -                revisionDescriptor.setProperty(property);
  +                    + req.getContentLength());
                   
                   // Owner
  -                String owner = 
  -                    slideToken.getCredentialsToken().getPublicCredentials();
  -                property = new NodeProperty("owner", owner, true);
  -                revisionDescriptor.setProperty(property);
  +                
revisionDescriptor.setOwner(slideToken.getCredentialsToken().getPublicCredentials());
                   
                   if (isMsProprietarySupport()) {
  -                    
  +                    NodeProperty property = null;
                       // Is hidden
                       property = new NodeProperty("ishidden", "0", "MICROSOFT");
                       revisionDescriptor.setProperty(property);
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to