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 pn...@apache.org on 2004/06/18 18:05:47 UTC

cvs commit: jakarta-slide/src/webdav/server/org/apache/slide/webdav/util PropertyHelper.java VersioningHelper.java

pnever      2004/06/18 09:05:47

  Modified:    src/webdav/server/org/apache/slide/webdav/method
                        AbstractWebdavMethod.java CopyMethod.java
                        PutMethod.java VersionControlMethod.java
               src/share/org/apache/slide/common Domain.java
               src/webdav/server/org/apache/slide/webdav/util
                        PropertyHelper.java VersioningHelper.java
  Log:
  Added means for specifying certain DeltaV parameters at store-level:
  - auto-version
  - auto-version-control
  - versioncontrol-exclude  (now takes multiple paths separated by ';')
  - checkout-fork
  - checkin-fork
  If the store configuration doesn't contain the parameter, the global value
  takes effect
  
  Revision  Changes    Path
  1.30      +38 -3     jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/AbstractWebdavMethod.java
  
  Index: AbstractWebdavMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/AbstractWebdavMethod.java,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- AbstractWebdavMethod.java	17 Jun 2004 17:27:30 -0000	1.29
  +++ AbstractWebdavMethod.java	18 Jun 2004 16:05:46 -0000	1.30
  @@ -71,6 +71,7 @@
   import org.apache.slide.webdav.util.PreconditionViolationException;
   import org.apache.slide.webdav.util.TransactionConstants;
   import org.apache.slide.webdav.util.UnlockListenerImpl;
  +import org.apache.slide.webdav.util.UriHandler;
   import org.apache.slide.webdav.util.ViolatedPrecondition;
   import org.apache.slide.webdav.util.WebdavConstants;
   import org.apache.slide.webdav.util.WebdavUtils;
  @@ -939,6 +940,40 @@
       
       protected boolean isLockNull( NodeRevisionDescriptor nrd ) {
           return nrd.propertyValueContains(P_RESOURCETYPE, E_LOCKNULL);
  +    }
  +    
  +    protected boolean isAutoVersionControl(String resourcePath) {
  +        return new Boolean(Domain.getParameter(I_AUTO_VERSION_CONTROL,
  +                                               I_AUTO_VERSION_CONTROL_DEFAULT,
  +                                               token.getUri(slideToken, resourcePath).getStore()))
  +            .booleanValue();
  +    }
  +    
  +    protected boolean isExcludedForVersionControl(String resourcePath) {
  +        String versionControlExcludePaths =
  +            Domain.getParameter(I_VERSIONCONTROL_EXCLUDEPATH,
  +                                I_VERSIONCONTROL_EXCLUDEPATH_DEFAULT,
  +                                token.getUri(slideToken, resourcePath).getStore());
  +        if (versionControlExcludePaths != null && versionControlExcludePaths.length() > 0) {
  +            StringTokenizer st = new StringTokenizer(versionControlExcludePaths, ";");
  +            while (st.hasMoreTokens()) {
  +                if (isExcluded(resourcePath, st.nextToken())) {
  +                    return true;
  +                }
  +            }
  +        }
  +        return false;
  +    }
  +    
  +    private boolean isExcluded(String resourcePath, String excludePath) {
  +        UriHandler uh = UriHandler.getUriHandler(resourcePath);
  +        if (excludePath != null && excludePath.length() > 0) {
  +            UriHandler exUh = UriHandler.getUriHandler(excludePath);
  +            if (exUh.isAncestorOf(uh)) {
  +                return true;
  +            }
  +        }
  +        return false;
       }
       
       protected SlideToken readonlySlideToken() {
  
  
  
  1.63      +11 -15    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.62
  retrieving revision 1.63
  diff -u -r1.62 -r1.63
  --- CopyMethod.java	16 Jun 2004 14:46:25 -0000	1.62
  +++ CopyMethod.java	18 Jun 2004 16:05:46 -0000	1.63
  @@ -5,7 +5,7 @@
    *
    * ====================================================================
    *
  - * Copyright 1999-2002 The Apache Software Foundation 
  + * Copyright 1999-2002 The Apache Software Foundation
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
  @@ -31,6 +31,7 @@
   import java.util.Iterator;
   import java.util.List;
   import java.util.Map;
  +import org.apache.slide.common.Domain;
   import org.apache.slide.common.NamespaceAccessToken;
   import org.apache.slide.common.ServiceAccessException;
   import org.apache.slide.common.SlideException;
  @@ -55,6 +56,7 @@
   import org.apache.slide.structure.ObjectNode;
   import org.apache.slide.structure.ObjectNotFoundException;
   import org.apache.slide.util.Configuration;
  +import org.apache.slide.util.XMLValue;
   import org.apache.slide.webdav.WebdavException;
   import org.apache.slide.webdav.WebdavServletConfig;
   import org.apache.slide.webdav.event.WebdavEvent;
  @@ -68,7 +70,6 @@
   import org.apache.slide.webdav.util.VersioningHelper;
   import org.apache.slide.webdav.util.ViolatedPrecondition;
   import org.apache.slide.webdav.util.WebdavUtils;
  -import org.apache.slide.util.XMLValue;
   import org.apache.slide.webdav.util.resourcekind.AbstractResourceKind;
   import org.apache.slide.webdav.util.resourcekind.CheckedInVersionControlled;
   import org.apache.slide.webdav.util.resourcekind.ResourceKind;
  @@ -112,7 +113,6 @@
        */
       protected String labelHeader = null;
       
  -    private boolean isInVersioncontrolExcludePath = false;
       private MacroParameters macroParameters = null;
       
       
  @@ -174,11 +174,6 @@
           
           // check destination URI
           UriHandler destUh = UriHandler.getUriHandler(destinationUri);
  -        if( VersionControlMethod.VERSIONCONTROL_EXCLUDEPATH != null && VersionControlMethod.VERSIONCONTROL_EXCLUDEPATH.length() > 0 ) {
  -            UriHandler exUh = UriHandler.getUriHandler( VersionControlMethod.VERSIONCONTROL_EXCLUDEPATH );
  -            if( exUh.isAncestorOf(destUh) )
  -                isInVersioncontrolExcludePath = true;
  -        }
           
           if (destUh.isRestrictedUri()) {
               boolean sendError = true;
  @@ -382,13 +377,13 @@
        * @param      revisionDescriptor  the NodeRevisionDescriptor whose DeltaV
        *                                 properties should be reset.
        */
  -    private void resetDeltavProperties(NodeRevisionDescriptor revisionDescriptor) {
  +    private void resetDeltavProperties(NodeRevisionDescriptor revisionDescriptor, String resourcePath) {
           
           // use initial values for DeltaV properties
           PropertyHelper propertyHelper = PropertyHelper.getPropertyHelper(slideToken, token, getConfig());
           ResourceKind resourceKind = VersionableImpl.getInstance();
           Iterator initialPropertyIterator =
  -            propertyHelper.createInitialProperties(resourceKind).iterator();
  +            propertyHelper.createInitialProperties(resourceKind, resourcePath).iterator();
           NodeProperty property = null;
           List initialDeltavProperties = new ArrayList();
           while (initialPropertyIterator.hasNext()) {
  @@ -568,7 +563,7 @@
               else {
                   
                   // DAV:must-not-copy-versioning-property
  -                resetDeltavProperties(destinationNrd);
  +                resetDeltavProperties(destinationNrd, destinationUri);
               }
               
               // set <workspace> property
  @@ -595,7 +590,7 @@
               }
               
               // check if the resource should be put under version-control
  -            if( PutMethod.AUTO_VERSION_CONTROL && !isCollection(destinationUri) && !isInVersioncontrolExcludePath ) {
  +            if( isAutoVersionControl(destinationUri) && !isCollection(destinationUri) && !isExcludedForVersionControl(destinationUri) ) {
                   versioningHelper.versionControl(destinationUri);
               }
               
  @@ -737,6 +732,7 @@
       
       
   }
  +
   
   
   
  
  
  
  1.75      +7 -16     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.74
  retrieving revision 1.75
  diff -u -r1.74 -r1.75
  --- PutMethod.java	16 Jun 2004 14:46:25 -0000	1.74
  +++ PutMethod.java	18 Jun 2004 16:05:46 -0000	1.75
  @@ -67,11 +67,7 @@
       extends AbstractWebdavMethod
       implements DeltavConstants {
       
  -    
  -    // -------------------------------------------------------------- Constants
  -    public final static boolean AUTO_VERSION_CONTROL = new Boolean(
  -        Domain.getParameter(I_AUTO_VERSION_CONTROL, I_AUTO_VERSION_CONTROL_DEFAULT) ).booleanValue();
  -    
  +
       // ----------------------------------------------------- Instance Variables
       
       /**
  @@ -83,7 +79,6 @@
        * Resource to be written.
        */
       protected String resourcePath;
  -    private boolean isInVersioncontrolExcludePath = false;
       
       // ----------------------------------------------------------- Constructors
       
  @@ -134,11 +129,6 @@
   
           // check destination URI
           UriHandler destUh = UriHandler.getUriHandler(resourcePath);
  -        if( VersionControlMethod.VERSIONCONTROL_EXCLUDEPATH != null && VersionControlMethod.VERSIONCONTROL_EXCLUDEPATH.length() > 0 ) {
  -            UriHandler exUh = UriHandler.getUriHandler( VersionControlMethod.VERSIONCONTROL_EXCLUDEPATH );
  -            if( exUh.isAncestorOf(destUh) )
  -                isInVersioncontrolExcludePath = true;
  -        }
           
           if (destUh.isRestrictedUri()) {
               boolean sendError = true;
  @@ -283,7 +273,7 @@
                   // Changed for DeltaV --start--
                   // check if the resource should be put under version-control
                   if ( isLockedNullResource ) {
  -                    if ( Configuration.useVersionControl() && AUTO_VERSION_CONTROL && !isInVersioncontrolExcludePath ) {
  +                    if ( Configuration.useVersionControl() && isAutoVersionControl(resourcePath) && !isExcludedForVersionControl(resourcePath) ) {
                           versioningHelper.versionControl(resourcePath);
                       }
                   }
  @@ -402,7 +392,7 @@
                                  revisionContent);
                   
                   // check if the resource should be put under version-control
  -                if ( Configuration.useVersionControl() && AUTO_VERSION_CONTROL && !isInVersioncontrolExcludePath ) {
  +                if ( Configuration.useVersionControl() && isAutoVersionControl(resourcePath) && !isExcludedForVersionControl(resourcePath) ) {
                       versioningHelper.versionControl(resourcePath);
                   }
                   
  @@ -521,6 +511,7 @@
       
       
   }
  +
   
   
   
  
  
  
  1.27      +10 -15    jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/VersionControlMethod.java
  
  Index: VersionControlMethod.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/VersionControlMethod.java,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- VersionControlMethod.java	24 Feb 2004 17:03:34 -0000	1.26
  +++ VersionControlMethod.java	18 Jun 2004 16:05:46 -0000	1.27
  @@ -5,7 +5,7 @@
    *
    * ====================================================================
    *
  - * Copyright 1999-2002 The Apache Software Foundation 
  + * Copyright 1999-2002 The Apache Software Foundation
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
  @@ -49,9 +49,6 @@
   public class VersionControlMethod extends AbstractWebdavMethod
       implements DeltavConstants {
       
  -    final static String VERSIONCONTROL_EXCLUDEPATH =
  -        Domain.getParameter( I_VERSIONCONTROL_EXCLUDEPATH, I_VERSIONCONTROL_EXCLUDEPATH_DEFAULT );
  -    
       /**
        * Resource to be written.
        */
  @@ -84,7 +81,7 @@
        * @exception WebdavException
        */
       protected void parseRequest() throws WebdavException {
  -//        readRequestContent();
  +        //        readRequestContent();
           
           resourcePath = requestUri;
           if (resourcePath == null) {
  @@ -151,15 +148,13 @@
               sendError( statusCode, e );
               throw new WebdavException( statusCode );
           }
  -
  +        
           try {
               UriHandler rUh = UriHandler.getUriHandler( resourcePath );
  -            if( VERSIONCONTROL_EXCLUDEPATH != null && VERSIONCONTROL_EXCLUDEPATH.length() > 0 ) {
  -                UriHandler exUh = UriHandler.getUriHandler( VERSIONCONTROL_EXCLUDEPATH );
  -                if( exUh.isAncestorOf(rUh) )
  -                    throw new ForbiddenException(
  -                        resourcePath,
  -                        new Exception("The resource path has been excluded from version-control") );
  +            if (isExcludedForVersionControl(resourcePath)) {
  +                throw new ForbiddenException(
  +                    resourcePath,
  +                    new Exception("The resource path has been excluded from version-control") );
               }
               if ( WebdavEvent.VERSION_CONTROL.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(WebdavEvent.VERSION_CONTROL, new WebdavEvent(this));
   
  
  
  
  1.47      +32 -9     jakarta-slide/src/share/org/apache/slide/common/Domain.java
  
  Index: Domain.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/common/Domain.java,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- Domain.java	5 Jun 2004 11:50:42 -0000	1.46
  +++ Domain.java	18 Jun 2004 16:05:46 -0000	1.47
  @@ -5,7 +5,7 @@
    *
    * ====================================================================
    *
  - * Copyright 1999-2002 The Apache Software Foundation 
  + * Copyright 1999-2002 The Apache Software Foundation
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
  @@ -29,11 +29,10 @@
   import java.util.Hashtable;
   import java.util.Properties;
   import java.util.Vector;
  -
   import javax.xml.parsers.SAXParser;
   import javax.xml.parsers.SAXParserFactory;
  -
   import org.apache.slide.authenticate.SecurityToken;
  +import org.apache.slide.store.Store;
   import org.apache.slide.util.conf.Configuration;
   import org.apache.slide.util.conf.ConfigurationElement;
   import org.apache.slide.util.conf.ConfigurationException;
  @@ -389,7 +388,7 @@
           String loggerClass = configuration.getAttribute
               ("logger", "org.apache.slide.util.logger.SimpleLogger");
           parameters.put("logger", loggerClass);
  -
  +        
           try {
               logger = (Logger) (Class.forName(loggerClass).newInstance());
               int loggerLevel = configuration.getAttributeAsInt("logger-level", Logger.INFO);
  @@ -404,7 +403,7 @@
               }
               throw new DomainInitializationFailedError("Logger Problem: " + e.toString());
           }
  -            
  +        
           info("Initializing Domain");
           
           namespaces = new Hashtable();
  @@ -681,6 +680,26 @@
       }
       
       /**
  +     * Get a domain parameter - possibly overlaid by a store specific value.
  +     *
  +     * @param    name                the parameter name
  +     * @param    defaultValue        the default value
  +     * @param    store               the store to check for store-specific values
  +     *
  +     * @return   the parameter value
  +     *
  +     */
  +    public static String getParameter(String name, String defaultValue, Store store) {
  +        String result = (String)store.getParameter(name);
  +        if (result == null) {
  +            result = (String)parameters.get(name);
  +            if (result == null)
  +                result = defaultValue;
  +        }
  +        return result;
  +    }
  +    
  +    /**
        * Set the specified parameters
        *
        * @param    parameters          the parameters
  @@ -872,5 +891,9 @@
       }
       
       
  +    /**
  +     * Constructor
  +     *
  +     */
   }
   
  
  
  
  1.71      +27 -21    jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/PropertyHelper.java
  
  Index: PropertyHelper.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/PropertyHelper.java,v
  retrieving revision 1.70
  retrieving revision 1.71
  diff -u -r1.70 -r1.71
  --- PropertyHelper.java	14 Jun 2004 12:38:36 -0000	1.70
  +++ PropertyHelper.java	18 Jun 2004 16:05:46 -0000	1.71
  @@ -107,15 +107,6 @@
   
   public class PropertyHelper extends AbstractWebdavHelper implements WebdavConstants, DeltavConstants, AclConstants, DaslConstants, BindConstants {
       
  -    public final static String DEFAULT_AUTO_VERSION =
  -        Domain.getParameter( I_AUTO_VERSION, I_AUTO_VERSION_DEFAULT );
  -    
  -    public final static String DEFAULT_CHECKOUT_FORK =
  -        Domain.getParameter( I_CHECKOUT_FORK, I_CHECKOUT_FORK_DEFAULT );
  -    
  -    public final static String DEFAULT_CHECKIN_FORK =
  -        Domain.getParameter( I_CHECKIN_FORK, I_CHECKIN_FORK_DEFAULT );
  -    
       public final static String LOCKDISCOVERY_INCL_PRINCIPAL =
           "lockdiscoveryIncludesPrincipalURL";
       
  @@ -185,7 +176,7 @@
        * @post result != null
        * @return a list of initial non-transient properties (empty list if none)
        */
  -    public List createInitialProperties( ResourceKind resourceKind ) {
  +    public List createInitialProperties( ResourceKind resourceKind, String resourcePath ) {
           
           Set sp = resourceKind.getSupportedLiveProperties();
           List result = null;
  @@ -199,7 +190,7 @@
                   String propName = (String)i.next();
                   if( AbstractResourceKind.isComputedProperty(propName) )
                       continue;
  -                Object pvalue = createDefaultValue( propName, resourceKind );
  +                Object pvalue = createDefaultValue( propName, resourceKind, resourcePath );
                   if (pvalue != null) {
                       result.add( new NodeProperty(propName, pvalue) );
                   }
  @@ -212,7 +203,22 @@
        * Create a default value for the specified property name and resource
        * kind
        */
  -    Object createDefaultValue( String propName, ResourceKind resourceKind ) {
  +    Object createDefaultValue( String propName, ResourceKind resourceKind, String resourcePath ) {
  +        
  +        String autoVersion =
  +            Domain.getParameter(I_AUTO_VERSION,
  +                                I_AUTO_VERSION_DEFAULT,
  +                                nsaToken.getUri(sToken, resourcePath).getStore());
  +        
  +        String checkoutFork =
  +            Domain.getParameter(I_CHECKOUT_FORK,
  +                                I_CHECKOUT_FORK_DEFAULT,
  +                                nsaToken.getUri(sToken, resourcePath).getStore());
  +        
  +        String checkinFork =
  +            Domain.getParameter(I_CHECKIN_FORK,
  +                                I_CHECKIN_FORK_DEFAULT,
  +                                nsaToken.getUri(sToken, resourcePath).getStore());
           
           String result = null;
           
  @@ -290,8 +296,8 @@
               
               XMLValue xmlValue = new XMLValue();
               
  -            if (DEFAULT_AUTO_VERSION.length() > 0) {
  -                xmlValue.add(new Element(DEFAULT_AUTO_VERSION, DNSP));
  +            if (autoVersion.length() > 0) {
  +                xmlValue.add(new Element(autoVersion, DNSP));
               }
               
               if( ! resourceKind.isSupportedPropertyValue(P_AUTO_VERSION, xmlValue) ) {
  @@ -306,8 +312,8 @@
               
               XMLValue xmlValue = new XMLValue();
               
  -            if (DEFAULT_CHECKOUT_FORK.length() > 0) {
  -                xmlValue.add(new Element(DEFAULT_CHECKOUT_FORK, DNSP));
  +            if (checkoutFork.length() > 0) {
  +                xmlValue.add(new Element(checkoutFork, DNSP));
               }
               
               if( ! resourceKind.isSupportedPropertyValue(P_CHECKOUT_FORK, xmlValue) ) {
  @@ -322,8 +328,8 @@
               
               XMLValue xmlValue = new XMLValue();
               
  -            if (DEFAULT_CHECKIN_FORK.length() > 0) {
  -                xmlValue.add(new Element(DEFAULT_CHECKIN_FORK, DNSP));
  +            if (checkinFork.length() > 0) {
  +                xmlValue.add(new Element(checkinFork, DNSP));
               }
               
               if( ! resourceKind.isSupportedPropertyValue(P_CHECKIN_FORK, xmlValue) ) {
  
  
  
  1.102     +15 -13    jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/VersioningHelper.java
  
  Index: VersioningHelper.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/VersioningHelper.java,v
  retrieving revision 1.101
  retrieving revision 1.102
  diff -u -r1.101 -r1.102
  --- VersioningHelper.java	16 Jun 2004 14:46:25 -0000	1.101
  +++ VersioningHelper.java	18 Jun 2004 16:05:46 -0000	1.102
  @@ -5,7 +5,7 @@
    *
    * ====================================================================
    *
  - * Copyright 1999-2002 The Apache Software Foundation 
  + * Copyright 1999-2002 The Apache Software Foundation
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
  @@ -251,10 +251,14 @@
               return;
           }
           
  +        // Create new history URI
  +        UriHandler vhrUh = UriHandler.createNextHistoryUri( sToken, nsaToken, rUh );
  +        String vhrUri = String.valueOf(vhrUh);
  +        
           // Set initial VR properties
           NodeRevisionDescriptor vrNrd =
               new NodeRevisionDescriptor(req.getContentLength());
  -        i = pHelp.createInitialProperties(VersionImpl.getInstance()).iterator();
  +        i = pHelp.createInitialProperties(VersionImpl.getInstance(), vhrUri).iterator();
           while( i.hasNext() )
               vrNrd.setProperty( (NodeProperty)i.next() );
           
  @@ -285,12 +289,12 @@
           String vhrBranch = NodeRevisionDescriptors.MAIN_BRANCH;
           NodeRevisionDescriptor vhrNrd =
               new NodeRevisionDescriptor( NodeRevisionNumber.HIDDEN_0_0, vhrBranch, vhrLabels, vhrProps );
  -        i = pHelp.createInitialProperties(VersionHistoryImpl.getInstance()).iterator();
  +        i = pHelp.createInitialProperties(VersionHistoryImpl.getInstance(), vhrUri).iterator();
           while( i.hasNext() )
               vhrNrd.setProperty( (NodeProperty)i.next() );
           
           // Set initial VCR properties (do not overwrite existing!!)
  -        i = pHelp.createInitialProperties(VersionControlledImpl.getInstance()).iterator();
  +        i = pHelp.createInitialProperties(VersionControlledImpl.getInstance(), resourcePath).iterator();
           while( i.hasNext() ) {
               NodeProperty p = (NodeProperty)i.next();
               if( !rNrd.exists(p.getName()) )
  @@ -298,8 +302,6 @@
           }
           
           // Create VHR/VR
  -        UriHandler vhrUh = UriHandler.createNextHistoryUri( sToken, nsaToken, rUh );
  -        String vhrUri = String.valueOf( vhrUh );
           SubjectNode vhrNode = new SubjectNode();
           structure.create( sToken, vhrNode, String.valueOf(vhrUh) );
           content.create( sToken, vhrUri, true ); //isVersioned=true
  @@ -397,7 +399,7 @@
           String evUri = String.valueOf(evUh);
           UriHandler vcrUh = UriHandler.getUriHandler( vcrUri );
           vcrNrd = new NodeRevisionDescriptor(0);
  -        i = pHelp.createInitialProperties(VersionControlledImpl.getInstance()).iterator();
  +        i = pHelp.createInitialProperties(VersionControlledImpl.getInstance(), resourcePath).iterator();
           while( i.hasNext() )
               vcrNrd.setProperty( (NodeProperty)i.next() );
           
  @@ -633,7 +635,7 @@
           String wsUri = String.valueOf(rUh);
           NodeRevisionDescriptor wsNrd =
               new NodeRevisionDescriptor(0);
  -        i = pHelp.createInitialProperties(WorkspaceImpl.getInstance()).iterator();
  +        i = pHelp.createInitialProperties(WorkspaceImpl.getInstance(), resourcePath).iterator();
           while( i.hasNext() )
               wsNrd.setProperty( (NodeProperty)i.next() );
           
  @@ -870,7 +872,7 @@
               
               // set WR props
               NodeRevisionDescriptor wrNrd = new NodeRevisionDescriptor();
  -            i = pHelp.createInitialProperties(WorkingImpl.getInstance()).iterator();
  +            i = pHelp.createInitialProperties(WorkingImpl.getInstance(), wrUri).iterator();
               while( i.hasNext() )
                   wrNrd.setProperty( (NodeProperty)i.next() );
               //            content.create( sToken, wrUri, wrNrd, rNrc );
  @@ -1195,7 +1197,7 @@
                   vrNrdNew = new NodeRevisionDescriptor( rNrd.getContentLength() );
               }
               
  -            i = pHelp.createInitialProperties(VersionImpl.getInstance()).iterator();
  +            i = pHelp.createInitialProperties(VersionImpl.getInstance(), vhrUri).iterator();
               while( i.hasNext() )
                   vrNrdNew.setProperty( (NodeProperty)i.next() );
               
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org