ozeigermann    2004/12/13 08:19:38

  Modified:    src/webdav/server/org/apache/slide/webdav/method
                        PutMethod.java
  Log:
  Fixed fix that buffered content in case of repetition of request.
  Now the buffer actually will be reused upon failure
  
  Revision  Changes    Path
  1.88      +14 -7     
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.87
  retrieving revision 1.88
  diff -u -r1.87 -r1.88
  --- PutMethod.java    13 Dec 2004 15:56:21 -0000      1.87
  +++ PutMethod.java    13 Dec 2004 16:19:38 -0000      1.88
  @@ -80,6 +80,8 @@
        */
       protected String resourcePath;
       
  +    private NodeRevisionContent revisionContent = null;
  +    
       // ----------------------------------------------------------- 
Constructors
       
       
  @@ -229,8 +231,9 @@
                   }
                   // Changed for DeltaV --end--
                   
  -                NodeRevisionContent revisionContent =
  -                    new NodeRevisionContent();
  +                if (revisionContent == null) {
  +                    revisionContent = new NodeRevisionContent();
  +                }
                   //revisionContent.setContent(req.getReader());
                   
                   revisionContent.setContent(req.getInputStream());
  @@ -404,8 +407,9 @@
                   }
                   
                   // Creating revisionDescriptor associated with the object
  -                NodeRevisionContent revisionContent =
  -                    new NodeRevisionContent();
  +                if (revisionContent == null) {
  +                    revisionContent = new NodeRevisionContent();
  +                }
                   revisionContent.setContent(req.getInputStream());
                   
                   // Get content length
  @@ -431,6 +435,8 @@
                   resp.setStatus(WebdavStatus.SC_CREATED);
                   
               }
  +            // clean up
  +            revisionContent = null;
           }
           catch (PreconditionViolationException e) {
               sendPreconditionViolation(e);
  @@ -446,6 +452,7 @@
               sendError( statusCode, e );
               throw new WebdavException( statusCode );
           }
  +        
       }
       
       /**
  
  
  

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

Reply via email to