org.apache.webdav.lib.methods
Class MkcolMethod

java.lang.Object
  |
  +--org.apache.commons.httpclient.HttpMethodBase
        |
        +--org.apache.webdav.lib.methods.MkcolMethod
All Implemented Interfaces:
org.apache.commons.httpclient.HttpMethod

public class MkcolMethod
extends org.apache.commons.httpclient.HttpMethodBase

The MKCOL method is used to create a new collection. All DAV compliant resources must support the MKCOL method. Collections are merely the HTTP name for structures like directories or folders (and, in fact, often map directly to a folder or directory on the web server.

This implementation of a MKCOL client method does not support a a request body, and the newly created web collection should therefore have no members.

MKCOL creates a new collection resource at the location specified by the Request-URI. If the resource identified by the Request-URI already exists on the server then the MKCOL will fail. During MKCOL processing, a server will make the Request-URI a member of the URI's parent collection (unless the Request-URI is "/"). If no parent collection exists, the method will fail. Thus, for example, if a request to create collection /a/b/c/d/ is made, and neither /a/b/ nor /a/b/c/ exists, the request will fail.

MKCOL is not idempotent (that is to say, each MKCOL request should be handled by the web server, and the results of a MKCOL request should not be cached).

Example Request

 MKCOL /webdisc/xfiles/ HTTP/1.1
 Host: www.server.org
 

Example Response

 HTTP/1.1 201 Created
 

Author:
Remy Maucherat

Fields inherited from class org.apache.commons.httpclient.HttpMethodBase
debug, followRedirects, name, parameters, path, query, queryString, requestHeaders, responseHeaders, state, statusCode, statusText
 
Fields inherited from interface org.apache.commons.httpclient.HttpMethod
PROTOCOL
 
Constructor Summary
MkcolMethod()
          Method constructor.
MkcolMethod(java.lang.String path)
          Method constructor.
 
Method Summary
 void parseResponse(java.io.InputStream is)
          Parse the response body.
 
Methods inherited from class org.apache.commons.httpclient.HttpMethodBase
checkNotUsed, checkUsed, followRedirects, generateHeaders, generateHeaders, generateQuery, generateRequestLine, generateRequestLine, getHeader, getHeaders, getHeadersHashtable, getName, getPath, getStatusCode, getStatusText, hasBeenUsed, hasResponseBody, isStreamedQuery, needContentLength, needExpectation, processResponseHeaders, recycle, removeHeader, setDebug, setFollowRedirects, setHeader, setParameter, setPath, setQuery, setQueryString, setState, setStatusCode, setStatusText, setUsed, streamQuery, validate
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MkcolMethod

public MkcolMethod()
Method constructor.

MkcolMethod

public MkcolMethod(java.lang.String path)
Method constructor.
Method Detail

parseResponse

public void parseResponse(java.io.InputStream is)
                   throws java.io.IOException
Parse the response body. The MKCOL method does not receive a response body.
Overrides:
parseResponse in class org.apache.commons.httpclient.HttpMethodBase
Parameters:
is - Input stream