public abstract class DavMethodBase extends EntityEnclosingMethod implements DavMethod, DavConstants
DavMethodBase...creationDateFormat, DEPTH_0, DEPTH_1, DEPTH_INFINITY, DEPTH_INFINITY_S, HEADER_AUTHORIZATION, HEADER_CONTENT_LANGUAGE, HEADER_CONTENT_LENGTH, HEADER_CONTENT_TYPE, HEADER_DAV, HEADER_DEPTH, HEADER_DESTINATION, HEADER_ETAG, HEADER_IF, HEADER_LAST_MODIFIED, HEADER_LOCK_TOKEN, HEADER_OVERWRITE, HEADER_TIMEOUT, INFINITE_TIMEOUT, modificationDateFormat, NAMESPACE, OPAQUE_LOCK_TOKEN_PREFIX, PROPERTY_CREATIONDATE, PROPERTY_DISPLAYNAME, PROPERTY_GETCONTENTLANGUAGE, PROPERTY_GETCONTENTLENGTH, PROPERTY_GETCONTENTTYPE, PROPERTY_GETETAG, PROPERTY_GETLASTMODIFIED, PROPERTY_LOCKDISCOVERY, PROPERTY_RESOURCETYPE, PROPERTY_SOURCE, PROPERTY_SUPPORTEDLOCK, PROPFIND_ALL_PROP, PROPFIND_ALL_PROP_INCLUDE, PROPFIND_BY_PROPERTY, PROPFIND_PROPERTY_NAMES, TIMEOUT_INFINITE, UNDEFINED_TIME, UNDEFINED_TIMEOUT, XML_ACTIVELOCK, XML_ALLPROP, XML_COLLECTION, XML_DEPTH, XML_DST, XML_EXCLUSIVE, XML_HREF, XML_INCLUDE, XML_KEEPALIVE, XML_LINK, XML_LOCKENTRY, XML_LOCKINFO, XML_LOCKROOT, XML_LOCKSCOPE, XML_LOCKTOKEN, XML_LOCKTYPE, XML_MULTISTATUS, XML_OMIT, XML_OWNER, XML_PROP, XML_PROPERTYBEHAVIOR, XML_PROPERTYUPDATE, XML_PROPFIND, XML_PROPNAME, XML_PROPSTAT, XML_REMOVE, XML_RESPONSE, XML_RESPONSEDESCRIPTION, XML_SET, XML_SHARED, XML_SOURCE, XML_STATUS, XML_TIMEOUT, XML_WRITE| Constructor and Description |
|---|
DavMethodBase(java.lang.String uri) |
| Modifier and Type | Method and Description |
|---|---|
void |
addRequestHeader(Header header)
Adds the specified
request header, NOT overwriting any
previous value. |
void |
checkSuccess() |
abstract java.lang.String |
getName()
Reset method to 'abstract' in order to force subclasses to change the
name (inherited value is
GetMethod#getName()). |
org.w3c.dom.Document |
getResponseBodyAsDocument()
Parse the response body into an Xml
Document. |
MultiStatus |
getResponseBodyAsMultiStatus()
Return the response body as
MultiStatus object. |
DavException |
getResponseException()
Builds a DavException for the status line and the DAV:error element that
may be present in the response body.
|
protected boolean |
getSuccess() |
protected abstract boolean |
isSuccess(int statusCode) |
protected void |
processMultiStatusBody(MultiStatus multiStatus,
org.apache.commons.httpclient.HttpState httpState,
HttpConnection httpConnection)
This method is invoked during the
processResponseBody(HttpState, HttpConnection),
which in this implementation parses the response body into a MultiStatus
object if the status code indicates 207 (MultiStatus).Subclasses may want to override this method in order to apply specific validation of the multi-status. This implementation does nothing. |
protected void |
processResponseBody(org.apache.commons.httpclient.HttpState httpState,
HttpConnection httpConnection)
In case of a MultiStatus response code, this method parses the response
body and resets the 'success' flag depending on the multistatus content,
which could indicate method failure as well.
|
protected void |
processStatusLine(org.apache.commons.httpclient.HttpState httpState,
HttpConnection httpConnection) |
void |
setRequestBody(org.w3c.dom.Document requestBody) |
void |
setRequestBody(XmlSerializable requestBody) |
void |
setRequestHeader(Header header)
Set the specified request header, overwriting any previous value.
|
protected void |
setSuccess(boolean success) |
boolean |
succeeded() |
public abstract java.lang.String getName()
GetMethod#getName()).HttpMethod#getName()public void addRequestHeader(Header header)
DavMethodrequest header, NOT overwriting any
previous value. Note that header-name matching is case insensitive.addRequestHeader in interface DavMethodDavMethod.addRequestHeader(Header)public void setRequestHeader(Header header)
DavMethodsetRequestHeader in interface DavMethodDavMethod.setRequestHeader(Header)public MultiStatus getResponseBodyAsMultiStatus() throws java.io.IOException, DavException
DavMethodMultiStatus object.getResponseBodyAsMultiStatus in interface DavMethodjava.io.IOException - if the response body could not be parsedDavException - if the status code is other than MultiStatus or if
obtaining the response XML document failsDavMethod.getResponseBodyAsMultiStatus()public org.w3c.dom.Document getResponseBodyAsDocument()
throws java.io.IOException
DavMethodDocument.getResponseBodyAsDocument in interface DavMethodnull if the response stream is
null.java.io.IOException - If an I/O (transport) problem occurs while obtaining
the response body of if the XML parsing fails.DavMethod.getResponseBodyAsDocument()public DavException getResponseException() throws java.io.IOException
DavMethodnull will be returned.getResponseException in interface DavMethodnull if this method did not result
in an error.java.io.IOExceptionDavMethod.getResponseException()public void checkSuccess()
throws DavException,
java.io.IOException
checkSuccess in interface DavMethodDavExceptionjava.io.IOExceptionDavMethod.checkSuccess()public boolean succeeded()
succeeded in interface DavMethodDavMethod.succeeded()public void setRequestBody(org.w3c.dom.Document requestBody)
throws java.io.IOException
requestBody - java.io.IOExceptionpublic void setRequestBody(XmlSerializable requestBody) throws java.io.IOException
requestBody - java.io.IOExceptionprotected abstract boolean isSuccess(int statusCode)
statusCode - protected void setSuccess(boolean success)
success - protected boolean getSuccess()
protected void processMultiStatusBody(MultiStatus multiStatus, org.apache.commons.httpclient.HttpState httpState, HttpConnection httpConnection)
processResponseBody(HttpState, HttpConnection),
which in this implementation parses the response body into a MultiStatus
object if the status code indicates 207 (MultiStatus).multiStatus - httpState - httpConnection - processResponseBody(HttpState, HttpConnection)protected void processStatusLine(org.apache.commons.httpclient.HttpState httpState,
HttpConnection httpConnection)
httpState - httpConnection - protected void processResponseBody(org.apache.commons.httpclient.HttpState httpState,
HttpConnection httpConnection)
httpState - httpConnection - HttpMethodBase#processResponseBody(HttpState, HttpConnection)