pnever      2003/03/18 03:36:15

  Modified:    src/webdav/server/org/apache/slide/webdav/util
                        HistoryPathHandler.java WorkspacePathHandler.java
               src/webdav/server/org/apache/slide/webdav/method
                        OptionsMethod.java
  Log:
  Changed handling for history- and workspace-collection-set:
  if the request URI can be associated to a particular store, only history and
  workspace locations the the store are returned.
  
  Revision  Changes    Path
  1.10      +19 -5     
jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/HistoryPathHandler.java
  
  Index: HistoryPathHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/HistoryPathHandler.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- HistoryPathHandler.java   17 Jul 2002 12:24:51 -0000      1.9
  +++ HistoryPathHandler.java   18 Mar 2003 11:36:14 -0000      1.10
  @@ -155,10 +155,23 @@
        * Return the resolved history paths
        */
       public List getResolvedHistoryPaths() {
  +        return getResolvedHistoryPaths( null );
  +    }
  +    
  +    /**
  +     * Return the resolved history paths
  +     */
  +    public List getResolvedHistoryPaths( String storeName ) {
           List result;
           if( parameterized ) {
  -            resolve();
  -            result = new ArrayList( resolvedHistoryPaths );
  +            if( storeName != null ) {
  +                result = new ArrayList();
  +                result.add( getResolvedHistoryPathHandler(storeName) );
  +            }
  +            else {
  +                resolve();
  +                result = new ArrayList( resolvedHistoryPaths );
  +            }
           }
           else {
               result = new ArrayList();
  @@ -181,4 +194,5 @@
           }
       }
   }
  +
   
  
  
  
  1.8       +19 -5     
jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/WorkspacePathHandler.java
  
  Index: WorkspacePathHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/util/WorkspacePathHandler.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- WorkspacePathHandler.java 17 Jul 2002 12:24:51 -0000      1.7
  +++ WorkspacePathHandler.java 18 Mar 2003 11:36:14 -0000      1.8
  @@ -156,10 +156,23 @@
        * Return the resolved workspace paths
        */
       public List getResolvedWorkspacePaths() {
  +        return getResolvedWorkspacePaths( null );
  +    }
  +    
  +    /**
  +     * Return the resolved workspace paths
  +     */
  +    public List getResolvedWorkspacePaths( String storeName ) {
           List result;
           if( parameterized ) {
  -            resolve();
  -            result = new ArrayList( resolvedWorkspacePaths );
  +            if( storeName != null ) {
  +                result = new ArrayList();
  +                result.add( getResolvedWorkspacePathHandler(storeName) );
  +            }
  +            else {
  +                resolve();
  +                result = new ArrayList( resolvedWorkspacePaths );
  +            }
           }
           else {
               result = new ArrayList();
  @@ -182,6 +195,7 @@
           }
       }
   }
  +
   
   
   
  
  
  
  1.32      +7 -5      
jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/OptionsMethod.java
  
  Index: OptionsMethod.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/method/OptionsMethod.java,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- OptionsMethod.java        13 Aug 2002 07:24:44 -0000      1.31
  +++ OptionsMethod.java        18 Mar 2003 11:36:14 -0000      1.32
  @@ -267,6 +267,8 @@
           // build response body if needed
           if( responseBodyNeeded ) {
               resp.setContentType( TEXT_XML_UTF_8 );
  +            UriHandler uh = UriHandler.getUriHandler( resourceUri );
  +            String storeName = uh.getAssociatedBaseStoreName(token.getName());
               UriHandler hpath = HistoryPathHandler.getHistoryPathHandler();
               UriHandler wspath = WorkspacePathHandler.getWorkspacePathHandler();
               Element ore =
  @@ -274,7 +276,7 @@
               if( versionHistoryCollectionSetRequested ) {
                   Element vhcse =
                       new Element( E_VERSION_HISTORY_COLLECTION_SET, xmlNs );
  -                Iterator i = 
((HistoryPathHandler)hpath).getResolvedHistoryPaths().iterator();
  +                Iterator i = 
((HistoryPathHandler)hpath).getResolvedHistoryPaths(storeName).iterator();
                   while( i.hasNext() ) {
                       Element hre =
                           new Element( E_HREF,xmlNs );
  @@ -286,7 +288,7 @@
               if( workspaceCollectionSetRequested ) {
                   Element wscse =
                       new Element( E_WORKSPACE_COLLECTION_SET, xmlNs );
  -                Iterator i = 
((WorkspacePathHandler)wspath).getResolvedWorkspacePaths().iterator();
  +                Iterator i = 
((WorkspacePathHandler)wspath).getResolvedWorkspacePaths(storeName).iterator();
                   while( i.hasNext() ) {
                       Element hre =
                           new Element( E_HREF, xmlNs );
  
  
  

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

Reply via email to