You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by ro...@apache.org on 2004/04/05 12:49:42 UTC

cvs commit: cocoon-2.1/src/blocks/webdav/java/org/apache/cocoon/components/repository/impl WebDAVRepositoryVersioningHelper.java

roku        2004/04/05 03:49:42

  Modified:    src/blocks/webdav/java/org/apache/cocoon/components/repository/impl
                        WebDAVRepositoryVersioningHelper.java
  Log:
  Started implementing setVersioned(String, false).
  
  Revision  Changes    Path
  1.3       +13 -2     cocoon-2.1/src/blocks/webdav/java/org/apache/cocoon/components/repository/impl/WebDAVRepositoryVersioningHelper.java
  
  Index: WebDAVRepositoryVersioningHelper.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.1/src/blocks/webdav/java/org/apache/cocoon/components/repository/impl/WebDAVRepositoryVersioningHelper.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- WebDAVRepositoryVersioningHelper.java	5 Apr 2004 10:14:48 -0000	1.2
  +++ WebDAVRepositoryVersioningHelper.java	5 Apr 2004 10:49:41 -0000	1.3
  @@ -138,18 +138,29 @@
        */
       public boolean setVersioned(final String uri, final boolean versioned) {            
           try {
  -            if(!versioned) // FIXME: Implement this via delete and create
  -                throw new UnsupportedOperationException();                                        
  +            if(!versioned)
  +                return unsetVersioned(uri);                                                                                   
               else      
                   return WebDAVUtil.getWebdavResource(this.repo.getAbsoluteURI(uri)).versionControlMethod(this.repo.getAbsoluteURI(uri));                           
           } catch (HttpException he) {
               this.getLogger().error("HTTP Error while versioncontrol " + uri, he);
           } catch (IOException ioe) {
               this.getLogger().error("IO Error while versioncontrol " + uri, ioe);
  +        } catch (ProcessingException pe) {
  +            this.getLogger().error("Processing Error while versioncontrol " + uri, pe);
           }
           
           return false;
       }
  +
  +    private boolean unsetVersioned(final String uri)
  +         throws ProcessingException 
  +     {
  +         //TODO: Also copy props
  +         final String content = this.repo.getContentString(uri);
  +         final List props = this.repo.getPropertyHelper().getAllProperties(uri);
  +         return this.repo.remove(uri) && this.repo.createResource(uri, content);    
  +     }
       
       /* (non-Javadoc)
        * @see org.apache.cocoon.components.repository.helpers.RepositoryVersioningHelper#getVersions(java.lang.String)