juergen 02/01/02 07:17:12
Modified: src/webdav/client/src/org/apache/webdav/lib/methods
XMLResponseMethodBase.java
Log:
first version of the delta-v prototype (client part). The option command may return
the Histories or Workspaces.
Revision Changes Path
1.26 +82 -3
jakarta-slide/src/webdav/client/src/org/apache/webdav/lib/methods/XMLResponseMethodBase.java
Index: XMLResponseMethodBase.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/webdav/client/src/org/apache/webdav/lib/methods/XMLResponseMethodBase.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- XMLResponseMethodBase.java 23 Sep 2001 11:25:20 -0000 1.25
+++ XMLResponseMethodBase.java 2 Jan 2002 15:17:12 -0000 1.26
@@ -1,4 +1,7 @@
/*
+ * $Header:
/home/cvs/jakarta-slide/src/webdav/client/src/org/apache/webdav/lib/methods/XMLResponseMethodBase.java,v
1.26 2002/01/02 15:17:12 juergen Exp $
+ * $Revision: 1.26 $
+ * $Date: 2002/01/02 15:17:12 $
*
* ====================================================================
*
@@ -58,6 +61,7 @@
*
*/
+
package org.apache.webdav.lib.methods;
import java.io.InputStream;
@@ -170,8 +174,8 @@
/**
* Return an enumeration containing the responses.
- *
- * @return An enumeration containing objects implementing the
+ *
+ * @return An enumeration containing objects implementing the
* ResponseEntity interface
*/
public Enumeration getResponses() {
@@ -333,7 +337,7 @@
property = new GetLastModifiedProperty(response, element);
} else if (CurrentUserPrivilegeSetProperty.TAG_NAME.equals
(localName)) {
- property =
+ property =
new CurrentUserPrivilegeSetProperty(response, element);
} else if (LockDiscoveryProperty.TAG_NAME.equals(localName)) {
property = new LockDiscoveryProperty(response, element);
@@ -374,6 +378,14 @@
public abstract int getStatusCode();
public abstract String getHref();
+ public Enumeration getHistories(){
+ Vector result = new Vector();
+ return result.elements();
+ }
+ public Enumeration getWorkspaces(){
+ Vector result = new Vector();
+ return result.elements();
+ }
public Enumeration getProperties() {
NodeList list =
DOMUtils.getElementsByTagNameNS(node, "prop", "DAV:");
@@ -482,4 +494,71 @@
return this.href;
}
}
+
+ class OptionsResponse extends SingleResponse{
+
+ OptionsResponse(Document document, String href, int statusCode) {
+ super(document, href, statusCode);
+
+ }
+
+
+ public Enumeration getWorkspaces(){
+
+
+ Node root = responseDocument.cloneNode(true).getFirstChild();
+ //System.out.println("Rootnode ws: "+ root.getNodeName());
+
+ String sPrefix = root.getPrefix();
+ Vector result = new Vector();
+
+ Node child = root.getFirstChild();
+ while (child!=null &&
!child.getNodeName().equalsIgnoreCase(sPrefix+":workspace-collection-set")){
+ child = child.getNextSibling();
+ }
+
+ if (child!=null &&
child.getNodeName().equalsIgnoreCase(sPrefix+":workspace-collection-set")){
+ child = child.getFirstChild();
+ while (child!=null){
+ result.add(child.getFirstChild().getNodeValue());
+ child = child.getNextSibling();
+ }
+ }
+
+ return result.elements();
+ }
+
+ public Enumeration getHistories(){
+ Node root = responseDocument.cloneNode(true).getFirstChild();
+ //System.out.println("Rootnode vh : " + root.getNodeName());
+
+ String sPrefix = root.getPrefix();
+ Vector result = new Vector();
+
+ //System.out.println("Prefix : " + sPrefix);
+
+ Node child = root.getFirstChild();
+ while (child!=null &&
!child.getNodeName().equalsIgnoreCase(sPrefix+":version-history-collection-set")){
+ child = child.getNextSibling();
+ }
+
+ if (child!=null &&
child.getNodeName().equalsIgnoreCase(sPrefix+":version-history-collection-set")){
+ child = child.getFirstChild();
+ while (child!=null){
+ result.add(child.getFirstChild().getNodeValue());
+ child = child.getNextSibling();
+ }
+ }
+
+ return result.elements();
+ }
+
+ }
+ protected void setDocument(Document doc){
+ responseDocument = doc;
+ }
+ protected void setResponseHashtable(Hashtable h){
+ responseHashtable = h;
+ }
}
+
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>