Index: xotcl/library/comm/Dav.xotcl =================================================================== diff -u -rad8a63234e44a8788efede276e811051ab891fbe -r78e82b3563a644f2df47320eacc693f1b788b03c --- xotcl/library/comm/Dav.xotcl (.../Dav.xotcl) (revision ad8a63234e44a8788efede276e811051ab891fbe) +++ xotcl/library/comm/Dav.xotcl (.../Dav.xotcl) (revision 78e82b3563a644f2df47320eacc693f1b788b03c) @@ -1,174 +1,175 @@ -# $Id: Dav.xotcl,v 1.3 2005/09/09 21:09:01 neumann Exp $ +# $Id: Dav.xotcl,v 1.4 2006/02/18 22:17:33 neumann Exp $ package provide xotcl::comm::dav 0.9 package require XOTcl namespace eval ::xotcl::comm::dav { - namespace import ::xotcl::* + package require xotcl::comm::httpAccess + namespace import ::xotcl::* - Class Dav -superclass Http - Dav instproc initialize args { - my instvar contentType - #showCall - set contentType text/xml - next - } + Class Dav -superclass Http + Dav instproc initialize args { + my instvar contentType + #showCall + set contentType text/xml + next + } - Dav instproc PROPFIND {} { - #showCall - # extra dav headers - # Depth: ("0" | "1" | "infinity") [infinity is the default] - - # body is a propfind XML-Element - # - # - # - # + Dav instproc PROPFIND {} { + #showCall + # extra dav headers + # Depth: ("0" | "1" | "infinity") [infinity is the default] + + # body is a propfind XML-Element + # + # + # + # - # this should be set by the clients - # - # - # - # - my open - } - Dav instproc PROPPATCH {} { - #showCall - # body is a propertyupdate XML-Element - # - # - # - - # set xmlReqBody($method) " - # - # - # - # - # - # - # " - my open - } - Dav instproc MKCOL {} { - #showCall - # invoked without a request body (may contain a message body?) - my open - } - Dav instproc GET {} { - #showCall - # invoked without a request body and without extra header - # back to HTTP class - next - } - Dav instproc HEAD {} { - #showCall - # invoked without a request bodyand without extra header - # back to HTTP class - next - } - Dav instproc POST {} { - #showCall - # the same as in RFC2068 - # back to HTTP class - next - } - Dav instproc DELETE {} { - #showCall - # extra dav headers - # Depth: ("0" | "1" | "infinity") + # this should be set by the clients + # + # + # + # + my open + } + Dav instproc PROPPATCH {} { + #showCall + # body is a propertyupdate XML-Element + # + # + # + + # set xmlReqBody($method) " + # + # + # + # + # + # + # " + my open + } + Dav instproc MKCOL {} { + #showCall + # invoked without a request body (may contain a message body?) + my open + } + Dav instproc GET {} { + #showCall + # invoked without a request body and without extra header + # back to HTTP class + next + } + Dav instproc HEAD {} { + #showCall + # invoked without a request bodyand without extra header + # back to HTTP class + next + } + Dav instproc POST {} { + #showCall + # the same as in RFC2068 + # back to HTTP class + next + } + Dav instproc DELETE {} { + #showCall + # extra dav headers + # Depth: ("0" | "1" | "infinity") - # invoked without a request body - my open - } - Dav instproc PUT {} { - #showCall - # PUT for Non-Collection Resources --> RFC2068 - # PUT for Collections --> MKCOL - # next - } - Dav instproc COPY {} { - #showCall - # extra dav headers - # If: [see 9.4 WebDAV] - # Destination: [see RFC2396 for the definition of absolutURI] - # Depth: ("0" | "1" | "infinity") - # Overwrite: ("T" | "F") - + # invoked without a request body + my open + } + Dav instproc PUT {} { + #showCall + # PUT for Non-Collection Resources --> RFC2068 + # PUT for Collections --> MKCOL + # next + } + Dav instproc COPY {} { + #showCall + # extra dav headers + # If: [see 9.4 WebDAV] + # Destination: [see RFC2396 for the definition of absolutURI] + # Depth: ("0" | "1" | "infinity") + # Overwrite: ("T" | "F") + - # body is a propertybehavior XML-Element - # - # - # - # - my open - } - Dav instproc MOVE {} { - #showCall - # extra dav headers - # If: [see 9.4 WebDAV] - # Destination: [see RFC2396 for the definition of absolutURI] - # Depth: "infinity" [see 8.9.2] - # Overwrite: ("T" | "F") + # body is a propertybehavior XML-Element + # + # + # + # + my open + } + Dav instproc MOVE {} { + #showCall + # extra dav headers + # If: [see 9.4 WebDAV] + # Destination: [see RFC2396 for the definition of absolutURI] + # Depth: "infinity" [see 8.9.2] + # Overwrite: ("T" | "F") - # body is a propertybehavior XML-Element - # see COPY - my open - } - Dav instproc LOCK {} { - #showCall - # extra dav headers - # If: [see 9.4 WebDAV] - # Destination: [see RFC2396 for the definition of absolutURI] - # Depth: ("0" | "1" | "infinity") - # Timeout: [see 9.8 WebDAV] - # Authorization: (defined in HTTP1.1 in 14.8) + # body is a propertybehavior XML-Element + # see COPY + my open + } + Dav instproc LOCK {} { + #showCall + # extra dav headers + # If: [see 9.4 WebDAV] + # Destination: [see RFC2396 for the definition of absolutURI] + # Depth: ("0" | "1" | "infinity") + # Timeout: [see 9.8 WebDAV] + # Authorization: (defined in HTTP1.1 in 14.8) - # body is a lockinfo XML-Element - # - # - # - # - # - # - # - my open - } + # body is a lockinfo XML-Element + # + # + # + # + # + # + # + my open + } - # The Lock-Token request header is used with the UNLOCK method to - # identify the lock to be removed. - Dav instproc UNLOCK {} { - my instvar headers - #showCall - # extra dav headers - # Lock-Token: [see 8.11 in WebDAV] + # The Lock-Token request header is used with the UNLOCK method to + # identify the lock to be removed. + Dav instproc UNLOCK {} { + my instvar headers + #showCall + # extra dav headers + # Lock-Token: [see 8.11 in WebDAV] - # invoked without a request body - my open - } + # invoked without a request body + my open + } - #--------------------- - # Utility # - #--------------------- + #--------------------- + # Utility # + #--------------------- - #? - Object xmlReqBodyManager - xmlReqBodyManager proc requireXmlReqBody {request} { - } + #? + Object xmlReqBodyManager + xmlReqBodyManager proc requireXmlReqBody {request} { + } - #? - Object davHeaderManager - davHeaderManager proc requireDavHeader {request} { - } + #? + Object davHeaderManager + davHeaderManager proc requireDavHeader {request} { + } - #LOCK /DAV/welcome.html HTTP/1.1 - #Host: wawog - #Connection: close + #LOCK /DAV/welcome.html HTTP/1.1 + #Host: wawog + #Connection: close - namespace export Dav \ - xmlReqBodyManager davHeaderManager + namespace export Dav \ + xmlReqBodyManager davHeaderManager } namespace import ::xotcl::comm::dav::*