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]