org.apache.jackrabbit.webdav.client.methods
Class OptionsMethod

java.lang.Object
  extended by org.apache.commons.httpclient.HttpMethodBase
      extended by org.apache.commons.httpclient.methods.ExpectContinueMethod
          extended by org.apache.commons.httpclient.methods.EntityEnclosingMethod
              extended by org.apache.jackrabbit.webdav.client.methods.DavMethodBase
                  extended by org.apache.jackrabbit.webdav.client.methods.OptionsMethod
All Implemented Interfaces:
org.apache.commons.httpclient.HttpMethod, DavMethod, DavConstants

public class OptionsMethod
extends DavMethodBase

OptionsMethod...


Field Summary
 
Fields inherited from class org.apache.commons.httpclient.methods.EntityEnclosingMethod
CONTENT_LENGTH_AUTO, CONTENT_LENGTH_CHUNKED
 
Fields inherited from interface org.apache.jackrabbit.webdav.DavConstants
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 Summary
OptionsMethod(String uri)
           
OptionsMethod(String uri, OptionsInfo optionsInfo)
           
OptionsMethod(String uri, String[] optionsEntries)
           
 
Method Summary
 String[] getAllowedMethods()
          Returns an array of String listing the allowed methods.
 String[] getComplianceClasses()
          Returns an array of String listing the WebDAV compliance classes.
 String getName()
          Reset method to 'abstract' in order to force subclasses to change the name (inherited value is GetMethod.getName()).
 OptionsResponse getResponseAsOptionsResponse()
           
 boolean hasComplianceClass(String complianceClass)
          Checks if the specified compliance class is supported by the resource identified by the original URI.
 boolean isAllowed(String method)
          Checks if the specified method is a supported method by the resource identified by the original URI.
protected  boolean isSuccess(int statusCode)
           
protected  void processResponseHeaders(org.apache.commons.httpclient.HttpState state, org.apache.commons.httpclient.HttpConnection conn)
           This implementation will parse the Allow and DAV headers to obtain the set of HTTP methods and WebDAV compliance classes supported by the resource identified by the Request-URI.
 
Methods inherited from class org.apache.jackrabbit.webdav.client.methods.DavMethodBase
addRequestHeader, checkSuccess, getResponseBodyAsDocument, getResponseBodyAsMultiStatus, getResponseException, getSuccess, processMultiStatusBody, processResponseBody, processStatusLine, setRequestBody, setRequestBody, setRequestHeader, setSuccess, succeeded
 
Methods inherited from class org.apache.commons.httpclient.methods.EntityEnclosingMethod
addContentLengthRequestHeader, addRequestHeaders, clearRequestBody, generateRequestBody, generateRequestEntity, getFollowRedirects, getRequestCharSet, getRequestContentLength, getRequestEntity, hasRequestContent, recycle, setContentChunked, setFollowRedirects, setRequestBody, setRequestBody, setRequestContentLength, setRequestContentLength, setRequestEntity, writeRequestBody
 
Methods inherited from class org.apache.commons.httpclient.methods.ExpectContinueMethod
getUseExpectHeader, setUseExpectHeader
 
Methods inherited from class org.apache.commons.httpclient.HttpMethodBase
abort, addCookieRequestHeader, addHostRequestHeader, addProxyConnectionHeader, addRequestHeader, addRequestHeader, addResponseFooter, addUserAgentRequestHeader, checkNotUsed, checkUsed, execute, generateRequestLine, getAuthenticationRealm, getContentCharSet, getDoAuthentication, getEffectiveVersion, getHostAuthState, getHostConfiguration, getMethodRetryHandler, getParams, getPath, getProxyAuthenticationRealm, getProxyAuthState, getQueryString, getRecoverableExceptionCount, getRequestHeader, getRequestHeaderGroup, getRequestHeaders, getRequestHeaders, getResponseBody, getResponseBodyAsStream, getResponseBodyAsString, getResponseCharSet, getResponseContentLength, getResponseFooter, getResponseFooters, getResponseHeader, getResponseHeaderGroup, getResponseHeaders, getResponseHeaders, getResponseStream, getResponseTrailerHeaderGroup, getStatusCode, getStatusLine, getStatusText, getURI, hasBeenUsed, isAborted, isConnectionCloseForced, isHttp11, isRequestSent, isStrictMode, readResponse, readResponseBody, readResponseHeaders, readStatusLine, releaseConnection, removeRequestHeader, removeRequestHeader, responseBodyConsumed, setConnectionCloseForced, setDoAuthentication, setHostConfiguration, setHttp11, setMethodRetryHandler, setParams, setPath, setQueryString, setQueryString, setRequestHeader, setRequestHeader, setResponseStream, setStrictMode, setURI, shouldCloseConnection, validate, writeRequest, writeRequestHeaders, writeRequestLine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.commons.httpclient.HttpMethod
abort, addRequestHeader, addRequestHeader, addResponseFooter, execute, getDoAuthentication, getFollowRedirects, getHostAuthState, getHostConfiguration, getParams, getPath, getProxyAuthState, getQueryString, getRequestHeader, getRequestHeaders, getRequestHeaders, getResponseBody, getResponseBodyAsStream, getResponseBodyAsString, getResponseFooter, getResponseFooters, getResponseHeader, getResponseHeaders, getResponseHeaders, getStatusCode, getStatusLine, getStatusText, getURI, hasBeenUsed, isRequestSent, isStrictMode, recycle, releaseConnection, removeRequestHeader, removeRequestHeader, setDoAuthentication, setFollowRedirects, setParams, setPath, setQueryString, setQueryString, setRequestHeader, setRequestHeader, setStrictMode, setURI, validate
 

Constructor Detail

OptionsMethod

public OptionsMethod(String uri)

OptionsMethod

public OptionsMethod(String uri,
                     String[] optionsEntries)
              throws IOException
Throws:
IOException

OptionsMethod

public OptionsMethod(String uri,
                     OptionsInfo optionsInfo)
              throws IOException
Throws:
IOException
Method Detail

getResponseAsOptionsResponse

public OptionsResponse getResponseAsOptionsResponse()
                                             throws IOException
Throws:
IOException

isAllowed

public boolean isAllowed(String method)
Checks if the specified method is a supported method by the resource identified by the original URI.

Parameters:
method -
Returns:
true if the given method is contained in the 'Allow' response header.

getAllowedMethods

public String[] getAllowedMethods()
Returns an array of String listing the allowed methods.

Returns:
all methods allowed on the resource specified by the original URI.

hasComplianceClass

public boolean hasComplianceClass(String complianceClass)
Checks if the specified compliance class is supported by the resource identified by the original URI.

Parameters:
complianceClass - WebDAV compliance class
Returns:
true if the given compliance class is contained in the 'DAV' response header.

getComplianceClasses

public String[] getComplianceClasses()
Returns an array of String listing the WebDAV compliance classes.

Returns:
all compliance classes supported by the resource specified by the original URI.

getName

public String getName()
Description copied from class: DavMethodBase
Reset method to 'abstract' in order to force subclasses to change the name (inherited value is GetMethod.getName()).

Specified by:
getName in interface org.apache.commons.httpclient.HttpMethod
Specified by:
getName in class DavMethodBase
Returns:
Name of the method.
See Also:
HttpMethod.getName()

processResponseHeaders

protected void processResponseHeaders(org.apache.commons.httpclient.HttpState state,
                                      org.apache.commons.httpclient.HttpConnection conn)

This implementation will parse the Allow and DAV headers to obtain the set of HTTP methods and WebDAV compliance classes supported by the resource identified by the Request-URI.

Overrides:
processResponseHeaders in class org.apache.commons.httpclient.HttpMethodBase
Parameters:
state - the state information associated with this method
conn - the connection used to execute this HTTP method
See Also:
HttpMethodBase.processResponseHeaders(HttpState, HttpConnection)

isSuccess

protected boolean isSuccess(int statusCode)
Specified by:
isSuccess in class DavMethodBase
Parameters:
statusCode -
Returns:
true if status code is 200 (OK).


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.