org.apache.webdav.lib
Class WebdavResource

java.lang.Object
  extended byorg.apache.webdav.lib.WebdavSession
      extended byorg.apache.webdav.lib.WebdavResource

public class WebdavResource
extends WebdavSession

The class WebdavResource is an abstract representation for WebDAV resource.

 A functional comparison of WebdavResource and JDK(It's different a lot).
 ----------------------------------+-------------------------------------
   File class (JDK 1.3.x)          |  WebdavResource class
 ----------------------------------+-------------------------------------
   File(String)                    |  WebdavResource(HttpURL)
   File(String, String)            |  X (need to escape)
   File(File, String)              |  WebdavResource(HttpURL, String)
   getName()                       |  getName()
   getParent()                     |  *see getHttpURL() and HttpURL
   getParentFile()                 |  X (not yet)
   getPath()                       |  getPath()
   isAbsolute()                    |  X
   getAbsolutePath()               |
   getAbsoluteFile()               |  X
   getCanonicalPath()              |
   getCanonicalFile()              |  X
   toURL()                         |  *see HttpURL
   canRead()                       |
   !canWrite()                     |  !isLocked()
   exists()                        |  exists()
   isDirectory()                   |  isCollection()
   isFile()                        |  !isCollection()
   isHidden()                      |  getIsHidden()
   lastModified()                  |  getGetLastModified()
   length()                        |  getGetContentLength()
   createNewFile()                 |  putMethod(String)
   delete()                        |  deleteMethod()
   deleteOnExit()                  |  X
   list()                          |  list()
   list(FilenameFilter)            |  X
   listFiles()                     |  listWebdavResources()
   listFiles(FilenameFilter)       |  X
   listFiles(FileFilter)           |  X
   mkdir()                         |  mkcolMethod()
   mkdirs()                        |  mkcolMethod()
   renameTo(File)                  |  moveMethod(String)
   setLastModified()               |  X
   setReadOnly()                   |  setOverwrite(boolean)
   listRoots()                     |  *see WebdavSession
   generateFile()                  |
   createTempFile(...)             |  setGetTempDir(String)
   compareTo(Object)               |  compareTo(Object)
   equals(Object)                  |  equals(Object)
   hashCode()                      |  X
 ----------------------------------+-------------------------------------
   URL class (JDK 1.3.x)           |  Webdavresource and HttpURL classes
 ----------------------------------+-------------------------------------
   getQuery()                      |  getQuery()
   getPath()                       |  getPath()
   getUserInfo()                   |  getUserInfo()
   getAuthority()                  |  getAuthority()
   getPort()                       |  getPort()
   getProtocol()                   |  getScheme()
   getHost()                       |  getHost()
   getFile()                       |  getPath()
   getRef()                        |  getFragmenet()
   hashCode()                      |  X
   sameFile()                      |
   toExternalForm()                |  toExternalForm()
   openConnection()                |
   openStream()                    |
   getContent()                    |  getMethodDataAsString()
 ----------------------------------+-------------------------------------
   URLConnection class (JDK 1.3.x) |  HttpClient Library and more
 ----------------------------------+-------------------------------------
   getFileNameMap()                |  X
   setFileNameMap()                |  X
   connect()                       |
   getURL()                        |  HttpURL#getURL()
   getContenetLength()()           |
   getContentType()                |
   getContentEncoding()            |
   getExpiration()                 |
   getDate()                       |
   getLastModified()               |
   getHeaderField()                |
   getHeaderFieldInt()             |  X
   getHeaderFielDate()             |  X
   getHeaderFieldKey()             |  X
   getHeaderFiled(int)             |  X
   getContenet()                   |
   getInputStream()                |  WebdavResource#getMethodData()
   getOutputStream()               |  WebdavResource#putMethod(...)
   setDoInput()                    |  X
   getDoInput()                    |  X
   setAllowUserInteraction()       |  *see WebdavException and WebdavStatus
   getAllowUserInteraction()       |  *see WebdavException and WebdavStatus
   setUseCaches()                  |
   getUseCaches()                  |
   getIfModifiedSince()            |  X
   setIfModifiedSince(boolean)     |  X
   setRequestProperty(...)         |  X
   getRequestProperty(...)         |  X
   guessContentTypeFromStream(...) |  X
 ----------------------------------+-------------------------------------
 


Field Summary
static int ALL
          The action setting the all properties for this resource.
protected  java.util.Enumeration allowedMethods
          The allowed HTTP methods.
static int BASIC
          The action setting the basic properties for this resource.
protected  WebdavResources childResources
          Table of the hrefs gotten in a collection.
protected  long creationDate
          An WebDAV property, creationdate.
static java.lang.String CREATIONDATE
          The creationdate property.
protected  java.util.Enumeration davCapabilities
          The capabilities of the WebDAV server.
static int DEFAULT
          The action setting the default DAV properties for this resource.
protected static int defaultAction
          The default action to find properties.
protected static int defaultDepth
          The default depth for WebDAV methods.
static java.lang.String defaultOwner
          Owner information for locking and unlocking.
protected  java.lang.String displayName
          An WebDAV property, displayname.
static java.lang.String DISPLAYNAME
          The displayname property.
protected  boolean exists
          An WebdavResource flag to check its existence;
static java.lang.String FALSE
          The false constant string.
protected  boolean followRedirects
           
static java.text.SimpleDateFormat[] formats
          Date formats using for Date parsing.
static java.lang.String GETCONTENTLANGUAGE
          The getcontentlanguage property.
protected  long getContentLength
          An WebDAV property, getcontentlength.
static java.lang.String GETCONTENTLENGTH
          The getcontentlength property.
protected  java.lang.String getContentType
          An WebDAV property, getcontenttype.
static java.lang.String GETCONTENTTYPE
          The getcontenttype property.
protected  java.lang.String getEtag
          An WebDAV property, getetag.
static java.lang.String GETETAG
          The getetag property.
protected  long getLastModified
          An WebDAV property, getlastmodified.
static java.lang.String GETLASTMODIFIED
          The getlastmodifed property.
protected static java.util.TimeZone gmtZone
          GMT timezone.
protected  java.util.Map headers
          Map of additional headers
protected  HttpURL httpURL
          The HttpURL to represent a WebDAV resource.
protected  boolean isCollection
          An WebDAV property, iscollection.
static java.lang.String ISCOLLECTION
          The iscollection property.
protected  boolean isHidden
          An WebDAV property, ishidden.
static java.lang.String ISHIDDEN
          The ishidden property.
static int LABEL_ADD
           
static int LABEL_REMOVE
           
static int LABEL_SET
           
protected  int latestStatusCode
          An status code performed by HTTP methods at the most recent.
protected  java.lang.String latestStatusMessage
          An status message performed by HTTP methods at the most recent.
protected  LockDiscoveryProperty lockDiscovery
          An WebDAV property, lockdiscovery.
static java.lang.String LOCKDISCOVERY
          The lockdiscovery property.
static int NAME
          The action setting only the displayname for this resource.
static int NOACTION
          No action to find properties for this resource.
static int OPTIONS_VERSION_HISTORY
           
static int OPTIONS_WORKSPACE
           
protected  boolean overwrite
          An WebdavResource flag to check overwriting;
protected  java.lang.String owner
          Owner information for locking and unlocking.
protected  ResourceTypeProperty resourceType
          An WebDAV property, resourcetype.
static java.lang.String RESOURCETYPE
          The resourcetype property.
static java.lang.String SOURCE
          The source property.
protected  java.lang.String supportedLock
          An WebDAV property, supportedlock.
static java.lang.String SUPPORTEDLOCK
          The supportedlock property.
protected static java.lang.String tempDirForGet
          Deprecated. The client is responsible for disk I/O.
protected  boolean thisResource
          The flag to set the status code by propfind.
static java.lang.String TRUE
          The true constant string.
protected static boolean useDiskForGet
          Deprecated. The client is responsible for disk I/O.
 
Fields inherited from class org.apache.webdav.lib.WebdavSession
client, debug, hostCredentials, proxyCredentials, proxyHost, proxyPort
 
Constructor Summary
protected WebdavResource()
          The default constructor.
protected WebdavResource(HttpClient client)
          The constructor.
  WebdavResource(HttpURL httpURL)
          The constructor.
  WebdavResource(HttpURL httpURL, boolean followRedirects)
          The constructor.
  WebdavResource(HttpURL httpURL, Credentials credentials, int action, int depth)
          The constructor.
  WebdavResource(HttpURL httpURL, int depth)
          The constructor.
  WebdavResource(HttpURL httpURL, int depth, boolean followRedirects)
          The constructor.
  WebdavResource(HttpURL httpURL, int action, int depth)
          The constructor.
  WebdavResource(HttpURL httpURL, int action, int depth, boolean followRedirects)
          The constructor.
  WebdavResource(HttpURL httpURL, java.lang.String additionalPath)
          The constructor.
  WebdavResource(HttpURL httpURL, java.lang.String additionalPath, boolean followRedirects)
          The constructor.
  WebdavResource(HttpURL httpURL, java.lang.String proxyHost, int proxyPort)
          The constructor.
  WebdavResource(HttpURL httpURL, java.lang.String proxyHost, int proxyPort, boolean followRedirects)
           
  WebdavResource(HttpURL httpURL, java.lang.String proxyHost, int proxyPort, Credentials proxyCredentials)
          The constructor.
  WebdavResource(HttpURL httpURL, java.lang.String proxyHost, int proxyPort, Credentials proxyCredentials, boolean followRedirects)
           
  WebdavResource(java.lang.String escapedHttpURL)
          The constructor.
  WebdavResource(java.lang.String escapedHttpURL, boolean followRedirects)
           
  WebdavResource(java.lang.String escapedHttpURL, Credentials credentials)
          The constructor.
  WebdavResource(java.lang.String escapedHttpURL, Credentials credentials, boolean followRedirects)
           
  WebdavResource(java.lang.String escapedHttpURL, java.lang.String proxyHost, int proxyPort)
          The constructor.
  WebdavResource(java.lang.String escapedHttpURL, java.lang.String proxyHost, int proxyPort, Credentials proxyCredentials)
          The constructor.
 
Method Summary
 boolean abortTransaction()
          Aborts - i.e. rolls back all changes of - the transaction started by startTransaction(String, int) and resets the transaction handle.
 AclProperty aclfindMethod()
          Return the AclProperty for the current resource
 AclProperty aclfindMethod(java.lang.String path)
          Return the AclProperty for the resource at the given path
 boolean aclMethod(java.lang.String path, Ace[] aces)
          Updates the resource with a new set of aces.
 java.util.Enumeration aclReportMethod(java.lang.String path, java.util.Collection properties, int reportType)
          Execute REPORT method.
 void addRequestHeader(java.lang.String header, java.lang.String value)
          Add a header in the request sent to the webdav server
 boolean bindMethod(java.lang.String newBinding)
          Execute the BIND method for this WebdavResource, given an existing path to bind with.
 boolean bindMethod(java.lang.String existingBinding, java.lang.String newBinding)
          Execute the BIND method given the new path to bind to an existing path.
 boolean checkinMethod()
          Execute the CHECKIN method for this WebdavResource.
 boolean checkinMethod(java.lang.String path)
          Execute the CHECKIN method for the given path.
 boolean checkoutMethod()
          Execute the CHECKOUT method for this WebdavResource.
 boolean checkoutMethod(java.lang.String path)
          Execute the CHECKOUT method for the given path.
 void close()
          Close the session of this client
 boolean commitTransaction()
          Commits the transaction started by startTransaction(String, int) and resets the transaction handle.
 int compareTo(java.lang.Object another)
          Compare to the given another object.
 int compareToWebdavResource(WebdavResource another)
          Compare to the WebdavResource object.
 boolean copyMethod(java.lang.String destination)
          Execute the COPY method for the given destination path.
 boolean copyMethod(java.lang.String source, java.lang.String destination)
          Execute the COPY method the given source and destination.
protected  WebdavResource createWebdavResource(HttpClient client)
          Create a new WebdavResource object (as a seperate method so that it can be overridden by subclasses.
 boolean deleteMethod()
          Execute the DELETE method for this WebdavResource.
 boolean deleteMethod(java.lang.String path)
          Execute the DELETE method for the given path.
protected  WebdavState discoverLock(java.lang.String owner, java.lang.String path, WebdavState state)
          Discover the given owner and locktoken and set the locktoken
 void discoverOwnLocks()
          Discover and refresh lock tokens.
 void discoverOwnLocks(java.lang.String owner)
          Discover and refresh lock tokens for a specific owner.
protected  boolean endTransaction(java.lang.String path, int transactionStatus)
           
 boolean equals(java.lang.Object obj)
          Test the object.
 int executeHttpRequestMethod(HttpClient client, HttpMethod method)
          Execute the http request method.
 boolean exists()
          Returns the last known information about the existence of this resource.
protected  void generateAdditionalHeaders(HttpMethod method)
          Add all additionals headers that have been previously registered with addRequestHeader to the method
protected  void generateIfHeader(HttpMethod method)
          Generate and add the If header to the specified HTTP method.
protected  void generateTransactionHeader(HttpMethod method)
          Generates and adds the "Transaction" header if this method is part of an externally controlled transaction.
 java.util.Enumeration getActiveLockOwners()
          Get the activelock owners for this resource.
 java.util.Enumeration getAllowedMethods()
          Get the allowed methods, checked by HTTP OPTIONS.
 WebdavResources getChildResources()
          Get all resources in this collection with the depth 1.
 long getCreationDate()
          Get the value of DAV property, creationdate.
 java.util.Enumeration getDavCapabilities()
          Get the WebDAV capabilities, checked by HTTP OPTIONS.
static int getDefaultAction()
          Get the default action.
static int getDefaultDepth()
          Get the default action.
 java.lang.String getDisplayName()
          Get the value of DAV property, displayname.
 boolean getExistence()
          Returns the last known information about the existence of this resource.
 boolean getFollowRedirects()
          Returns the current "follow redirects" flag.
 long getGetContentLength()
          Get the value of DAV property, getcontentlength.
 java.lang.String getGetContentType()
          Get the value of DAV property, getcontenttype.
 java.lang.String getGetEtag()
          Get the value of DAV property, getetag.
 long getGetLastModified()
          Get the value of DAV property, getlastmodified.
static java.lang.String getGetTempDir()
          Deprecated. The returned directory is not used by the GET method.
static boolean getGetUseDisk()
          Deprecated. This method always returns false.
 java.lang.String getHost()
          Get the hostname of this WebdavResource.
 HttpURL getHttpURL()
          Get the HttpURL of this WebdavResource.
 HttpURL getHttpURLExceptForUserInfo()
          Get the HttpURL except for userinfo.
 boolean getIsCollection()
          Get the value of DAV property, iscollection
 boolean getIsHidden()
          Get the value of DAV property, ishidden.
 LockDiscoveryProperty getLockDiscovery()
          Get the value of DAV property, lockdiscovery.
 boolean getMethod(java.io.File file)
          Execute the GET method for this WebdavResource path.
 boolean getMethod(java.lang.String path, java.io.File file)
          Execute the GET method for the given path.
 java.io.InputStream getMethodData()
          Get InputStream for the GET method.
 java.io.InputStream getMethodData(java.lang.String path)
          Get InputStream for the GET method for the given path.
 java.lang.String getMethodDataAsString()
          Get data as a String for the GET method.
 java.lang.String getMethodDataAsString(java.lang.String path)
          Get data as a String for the GET method for the given path.
 java.lang.String getName()
          Get the name of this WebdavResource.
 boolean getOverwrite()
          Get the current value of the overwrite flag for COPY, MOVE, BIND and REBIND.
 java.lang.String getOwner()
          Get the owner string, as used for locking purposes.
 java.lang.String getPath()
          Get the path part of this WebdavResource.
 ResourceTypeProperty getResourceType()
          Get the value of DAV property, resourcetype.
 int getStatusCode()
          Get the lastest value of the status code by HTTP methods.
 java.lang.String getStatusMessage()
          Get the lastest value of the status message by HTTP methods.
 java.lang.String getSupportedLock()
          Get the value of DAV property, supportedlock.
 java.lang.String getTransactionHandle()
          Returns the transaction handle set by startTransaction(String, int).
 boolean headMethod()
          Execute the HEAD method for this WebdavResource.
 boolean headMethod(java.lang.String path)
          Execute the HEAD method for the given path.
 boolean isCollection()
          Get the value of DAV property, resourcetype
 boolean isLocked()
          Test that this resource is locked.
protected  boolean isTheClient()
          Test that the httpURL is the same with the client.
 boolean labelMethod(java.lang.String labelname, int type)
          Execute a LABEL method on the current path, setting the given label
 boolean labelMethod(java.lang.String path, java.lang.String labelname, int type)
          Execute a LABEL method on the given path, setting the given label
 java.lang.String[] list()
          Get an array of pathnames denoting the WebDAV resources in the collection denoted by this pathname.
 java.util.Vector listBasic()
          Get an array of pathnames and basic information denoting the WebDAV resources in the denoted by this pathname.
 WebdavResource[] listWebdavResources()
          Get an array of resources denoting the WebDAV child resources in the collection of this resources.
 LockDiscoveryProperty lockDiscoveryPropertyFindMethod()
          Return the LockDiscoveryProperty for the current resource
 LockDiscoveryProperty lockDiscoveryPropertyFindMethod(java.lang.String path)
          Return the LockDiscoveryProperty for the resource at the given path
 boolean lockMethod()
          Execute the LOCK method for this WebdavResource.
 boolean lockMethod(java.lang.String path)
          Execute the LOCK method for the given path.
 boolean lockMethod(java.lang.String owner, int timeout)
          Execute the LOCK method for this WebdavResource.
 boolean lockMethod(java.lang.String owner, short timeout)
          Deprecated. The timeout value MUST NOT be greater than 2^32-1.
 boolean lockMethod(java.lang.String path, java.lang.String owner, int timeout)
          Execute the LOCK method for the given path.
 boolean lockMethod(java.lang.String path, java.lang.String owner, int timeout, short lockType)
          Execute the LOCK method for the given path.
 boolean lockMethod(java.lang.String path, java.lang.String owner, int timeout, short lockType, int depth)
          Execute the LOCK method for the given path.
 boolean lockMethod(java.lang.String path, java.lang.String owner, short timeout)
          Deprecated. The timeout value MUST NOT be greater than 2^32-1.
 boolean mkcolMethod()
          Execute the MKCOL method for this WebdavResource.
 boolean mkcolMethod(java.lang.String path)
          Execute the MKCOL method for the given path.
 boolean mkWorkspaceMethod()
          Execute the MKWORKSPACE method for this WebdavResource.
 boolean mkWorkspaceMethod(java.lang.String path)
          Execute the MKCOL method for the given path.
 boolean moveMethod(java.lang.String destination)
          Execute the MOVE method for this WebdavReource.
 boolean moveMethod(java.lang.String source, java.lang.String destination)
          Execute the MOVE method for the given source and destination.
 boolean optionsMethod()
          Execute OPTIONS method for this WebdavResource.
 java.util.Enumeration optionsMethod(HttpURL httpURL)
          Execute OPTIONS method for the given http URL.
 java.util.Enumeration optionsMethod(HttpURL httpURL, int type)
          Execute OPTIONS method for the given http URL, DELTAV
 boolean optionsMethod(java.lang.String path)
          Execute OPTIONS method for the given path.
 java.util.Enumeration optionsMethod(java.lang.String path, int type)
          Execute OPTIONS method for the given path.
 boolean optionsMethod(java.lang.String path, java.lang.String aMethod)
          Execute OPTIONS method for the given path.
protected  java.util.Date parseDate(java.lang.String dateValue)
          Parse the java.util.Date string for HTTP-date.
 boolean pollMethod(java.lang.String contentLocation, int subscriptionId)
          Asks the server whether events for a given subscription are fired.
 boolean pollMethod(Subscription subscription)
          Asks the server whether events for a given subscription are fired.
 PrincipalCollectionSetProperty principalCollectionSetFindMethod()
          Get the PrincipalCollectionSetProperty for the current resource.
 PrincipalCollectionSetProperty principalCollectionSetFindMethod(java.lang.String path)
          Get the PrincipalCollectionSetProperty for the resource.
protected  void processProperty(Property property)
          Process a property, setting various member variables depending on what the property is.
 java.util.Enumeration propfindMethod(int depth)
          Execute PROPFIND method with allprop for this WebdavResource.
 java.util.Enumeration propfindMethod(int depth, java.util.Vector properties)
          Execute PROPFIND method with by propname for this resource.
 java.util.Enumeration propfindMethod(java.lang.String propertyName)
          Execute PROPFIND method for this WebdavResource.
 java.util.Enumeration propfindMethod(java.lang.String path, int depth)
          Execute PROPFIND method with allprop for the given path.
 java.util.Enumeration propfindMethod(java.lang.String path, int depth, java.util.Vector properties)
          Execute PROPFIND method with by propname for the given path.
 java.util.Enumeration propfindMethod(java.lang.String path, java.lang.String propertyName)
          Execute PROPFIND method for the given WebdavResource path.
 java.util.Enumeration propfindMethod(java.lang.String path, java.util.Vector properties)
          Execute PROPFIND method for the given path and properties.
 java.util.Enumeration propfindMethod(java.util.Vector properties)
          Execute PROPFIND method for this WebdavResource.
 boolean proppatchMethod(java.util.Hashtable properties)
          Deprecated. it could be removed after the major version changes
 boolean proppatchMethod(java.util.Hashtable properties, boolean action)
          Execute PROPATCH method for this resource with the given properties.
 boolean proppatchMethod(PropertyName propertyName, java.lang.String propertyValue)
          Deprecated. it could be removed after the major version changes
 boolean proppatchMethod(PropertyName propertyName, java.lang.String propertyValue, boolean action)
          Execute PROPATCH method for this resource with the given property.
 boolean proppatchMethod(java.lang.String path, java.util.Hashtable properties)
          Deprecated. it could be removed after the major version changes
 boolean proppatchMethod(java.lang.String path, java.util.Hashtable properties, boolean action)
          Execute PROPATCH method for the specified resource with the given properties.
 boolean proppatchMethod(java.lang.String path, PropertyName propertyName, java.lang.String propertyValue)
          Deprecated. it could be removed after the major version changes
 boolean proppatchMethod(java.lang.String path, PropertyName propertyName, java.lang.String propertyValue, boolean action)
          Execute PROPATCH method for the given resource with the given properties.
 boolean proppatchMethod(java.lang.String propertyName, java.lang.String propertyValue)
          Deprecated. it could be removed after the major version changes
 boolean proppatchMethod(java.lang.String propertyName, java.lang.String propertyValue, boolean action)
          Execute PROPATCH method for this resource with the given property.
 boolean proppatchMethod(java.lang.String path, java.lang.String propertyName, java.lang.String propertyValue)
          Deprecated. it could be removed after the major version changes
 boolean proppatchMethod(java.lang.String path, java.lang.String propertyName, java.lang.String propertyValue, boolean action)
          Execute PROPATCH method for the specified resource with the given property.
 boolean putMethod(byte[] data)
          Execute the PUT method for this resource.
 boolean putMethod(java.io.File file)
          Execute the PUT method for this WebdavResource.
 boolean putMethod(java.io.InputStream is)
          Execute the PUT method for this resource.
 boolean putMethod(java.lang.String data)
          Execute the PUT method for this WebdavResource.
 boolean putMethod(java.lang.String path, byte[] data)
          Execute the PUT method for the given path.
 boolean putMethod(java.lang.String path, java.io.File file)
          Execute the PUT method for the given path.
 boolean putMethod(java.lang.String path, java.io.InputStream is)
          Execute the PUT method for the given path.
 boolean putMethod(java.lang.String path, java.lang.String data)
          Execute the PUT method for the given path.
 boolean putMethod(java.lang.String path, java.net.URL url)
          Execute the PUT method for the given path from the given url.
 boolean putMethod(java.net.URL url)
          Execute the PUT method for this resource from the given url.
 boolean rebindMethod(java.lang.String newBinding)
          Execute the Rebind method for this WebdavResource given the new Resource to bind with.
 boolean rebindMethod(java.lang.String existingBinding, java.lang.String newBinding)
          Execute the Rebind method given a resource to rebind and the new Resource to bind with.
protected  void refresh()
          Refresh the properties of this resource without changing the status of the previous command
 java.util.Enumeration reportMethod(HttpURL httpURL, int depth)
          Execute the REPORT method.
 java.util.Enumeration reportMethod(HttpURL httpURL, java.lang.String sQuery, int depth)
           
 java.util.Enumeration reportMethod(HttpURL httpURL, java.util.Vector properties)
           
 java.util.Enumeration reportMethod(HttpURL httpURL, java.util.Vector properties, int depth)
           
 java.util.Enumeration reportMethod(HttpURL httpURL, java.util.Vector properties, java.util.Vector histUri, int depth)
           
 HttpClient retrieveSessionInstance()
          Retrieve the current http client for this resource.
protected  void setAllProp(int depth)
          Set all properties for this resource.
protected  void setBasicProperties(int depth)
          Sets the basic properties on a resource by indirectly issuing a PROPFIND on the resource.
protected  void setClient()
          Set the client for this resource.
protected  void setClient(HttpURL httpURL)
          Set the client for this resource and the given http URL.
 void setContentType(java.lang.String contentType)
          Set the content-type to use for this resource, for PUTs.
protected  void setCreationDate(long creationDate)
          Set the value of DAV property, creationdate.
protected  void setCreationDate(java.lang.String creationDate)
          Set the value of DAV property, creationdate.
static void setDefaultAction(int action)
          Set the default action for this resource.
static void setDefaultDepth(int depth)
          Set the default action for this resource.
protected  void setDefaultProperties(int depth)
          Set the default properties on the resource by indirectly issuing a PROPFIND request for a default set of properties.
protected  void setDisplayName(java.lang.String displayName)
          Set the value of DAV property, displayname.
 void setEncodeURLs(boolean encodeURLs)
          Deprecated. No longer has any effect.
protected  void setExistence(boolean exists)
          Set its existence.
 void setFollowRedirects(boolean value)
          Sets a flag indicating that redirect responses from the server shall be followed.
protected  void setGetContentLength(long getContentLength)
          Set the value of DAV property, getcontentlength.
protected  void setGetContentLength(java.lang.String getContentLength)
          Set the value of DAV property, getcontentlength.
protected  void setGetContentType(java.lang.String getContentType)
          Set the value of DAV property, getcontenttype.
protected  void setGetEtag(java.lang.String getEtag)
          Set the value of DAV property, getetag.
protected  void setGetLastModified(long getLastModified)
          Set the value of DAV property, getlastmodified.
protected  void setGetLastModified(java.lang.String getLastModified)
          Set the value of DAV property, getlastmodified.
static void setGetTempDir(java.lang.String tempDir)
          Deprecated. The given directory will not be used.
static void setGetUseDisk(boolean useDisk)
          Deprecated. This method has no effect.
 void setHttpURL(HttpURL httpURL)
          Set the HttpURL for this WebdavResource.
 void setHttpURL(HttpURL httpURL, int depth)
          Set the HttpURL for this WebdavResource.
 void setHttpURL(HttpURL httpURL, int action, int depth)
          Set the HttpURL for this WebdavResource.
 void setHttpURL(HttpURL httpURL, java.lang.String additionalPath)
          Set the HttpURL for this WebdavResource.
 void setHttpURL(HttpURL httpURL, java.lang.String additionalPath, int action)
          Set the HttpURL for this WebdavResource.
 void setHttpURL(HttpURL httpURL, java.lang.String additionalPath, int action, int depth)
          Set the HttpURL for this WebdavResource.
 void setHttpURL(java.lang.String escapedHttpURL)
          Set the HttpURL of this WebdavResource.
protected  void setIsCollection(boolean isCollection)
          Set the value of DAV property, iscollection
protected  void setIsCollection(java.lang.String isCollection)
          Set the value of DAV property, iscollection
protected  void setIsHidden(boolean isHidden)
          Set the value of DAV property, ishidden.
protected  void setIsHidden(java.lang.String isHidden)
          Set the value of DAV property, ishidden.
protected  void setLockDiscovery(LockDiscoveryProperty lockDiscovery)
          Set the value of DAV property, lockdiscovery.
protected  void setNamedProp(int depth, java.util.Vector propertyNames)
          Set the named properties for this resource.
protected  void setNameProperties(int depth)
          Set only the displayname property for this resource.
 void setOverwrite(boolean overwrite)
          Set the overwrite flag for COPY, MOVE, BIND and REBIND.
 void setPath(java.lang.String path)
          Set the path part of this WebdavResource.
 void setProperties(int depth)
          Set the properties for this resource.
 void setProperties(int action, int depth)
          Set the properties for this resource.
protected  void setResourceType(ResourceTypeProperty resourceType)
          Set the value of DAV property, resourcetype.
protected  void setStatusCode(int statusCode)
          Set the lastest value of the status code by HTTP methods.
protected  void setStatusCode(int statusCode, java.lang.String message)
          Set the lastest value of the status code by HTTP methods.
protected  void setSupportedLock(java.lang.String supportedLock)
          Set the value of DAV property, supportedlock.
 void setUserInfo(java.lang.String userName, java.lang.String password)
          Set the userinfo part of this WebdavResource.
protected  void setWebdavProperties(java.util.Enumeration responses)
          Set WebDAV properties following to the given http URL.
 boolean startTransaction(java.lang.String owner, int timeout)
          Begins a new transaction.
 boolean subscribeMethod(java.lang.String path, int subscriptionId)
          Refreshes a subscription.
 Subscription subscribeMethod(java.lang.String path, java.lang.String notificationType, java.lang.String callback, long notificationDelay, int depth, long lifetime)
          Subscribes for notifications for modifications of WebDAV resources.
 boolean subscribeMethod(Subscription subscription)
          Refreshes a subscription.
 java.lang.String toString()
          Return the http URL string.
 boolean unbindMethod()
          Execute the UNBIND method for this WebdavResource.
 boolean unbindMethod(java.lang.String binding)
          Execute the UNBIND method given the resource to Unbind.
 boolean uncheckoutMethod()
          Execute the CHECKOUT method for this WebdavResource.
 boolean uncheckoutMethod(java.lang.String path)
          Execute the CHECKOUT method for the given path.
 boolean unlockMethod()
          Execute the Unlock method for this WebdavResource.
 boolean unlockMethod(java.lang.String path)
          Execute the Unlock method for the given path.
 boolean unlockMethod(java.lang.String path, java.lang.String owner)
          Execute the Unlock method for the given path.
 boolean unsubscribeMethod(java.lang.String path, int subscriptionId)
          Cancels a subscription.
 boolean unsubscribeMethod(Subscription subscription)
          Cancels a subscription.
 boolean updateMethod(java.lang.String target)
          Update this resource to the specified target
 boolean updateMethod(java.lang.String path, java.lang.String target)
          Update the specified resource to the specified target
 boolean versionControlMethod(java.lang.String path)
           
 boolean versionControlMethod(java.lang.String path, java.lang.String target)
           
 
Methods inherited from class org.apache.webdav.lib.WebdavSession
closeSession, closeSession, getSessionInstance, getSessionInstance, setCredentials, setDebug, setProxy, setProxyCredentials
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DISPLAYNAME

public static final java.lang.String DISPLAYNAME
The displayname property.

See Also:
Constant Field Values

GETCONTENTLANGUAGE

public static final java.lang.String GETCONTENTLANGUAGE
The getcontentlanguage property.

See Also:
Constant Field Values

GETCONTENTLENGTH

public static final java.lang.String GETCONTENTLENGTH
The getcontentlength property.

See Also:
Constant Field Values

GETLASTMODIFIED

public static final java.lang.String GETLASTMODIFIED
The getlastmodifed property.

See Also:
Constant Field Values

CREATIONDATE

public static final java.lang.String CREATIONDATE
The creationdate property.

See Also:
Constant Field Values

RESOURCETYPE

public static final java.lang.String RESOURCETYPE
The resourcetype property.

See Also:
Constant Field Values

SOURCE

public static final java.lang.String SOURCE
The source property.

See Also:
Constant Field Values

GETCONTENTTYPE

public static final java.lang.String GETCONTENTTYPE
The getcontenttype property.

See Also:
Constant Field Values

GETETAG

public static final java.lang.String GETETAG
The getetag property.

See Also:
Constant Field Values

ISHIDDEN

public static final java.lang.String ISHIDDEN
The ishidden property.

See Also:
Constant Field Values

ISCOLLECTION

public static final java.lang.String ISCOLLECTION
The iscollection property.

See Also:
Constant Field Values

SUPPORTEDLOCK

public static final java.lang.String SUPPORTEDLOCK
The supportedlock property.

See Also:
Constant Field Values

LOCKDISCOVERY

public static final java.lang.String LOCKDISCOVERY
The lockdiscovery property.

See Also:
Constant Field Values

NOACTION

public static final int NOACTION
No action to find properties for this resource.

See Also:
Constant Field Values

NAME

public static final int NAME
The action setting only the displayname for this resource.

See Also:
Constant Field Values

BASIC

public static final int BASIC
The action setting the basic properties for this resource.

See Also:
Constant Field Values

DEFAULT

public static final int DEFAULT
The action setting the default DAV properties for this resource.

See Also:
Constant Field Values

ALL

public static final int ALL
The action setting the all properties for this resource.

See Also:
Constant Field Values

OPTIONS_WORKSPACE

public static final int OPTIONS_WORKSPACE
See Also:
Constant Field Values

OPTIONS_VERSION_HISTORY

public static final int OPTIONS_VERSION_HISTORY
See Also:
Constant Field Values

LABEL_SET

public static final int LABEL_SET
See Also:
Constant Field Values

LABEL_REMOVE

public static final int LABEL_REMOVE
See Also:
Constant Field Values

LABEL_ADD

public static final int LABEL_ADD
See Also:
Constant Field Values

defaultOwner

public static final java.lang.String defaultOwner
Owner information for locking and unlocking.

See Also:
Constant Field Values

TRUE

public static final java.lang.String TRUE
The true constant string.

See Also:
Constant Field Values

FALSE

public static final java.lang.String FALSE
The false constant string.

See Also:
Constant Field Values

formats

public static final java.text.SimpleDateFormat[] formats
Date formats using for Date parsing.


gmtZone

protected static final java.util.TimeZone gmtZone
GMT timezone.


httpURL

protected HttpURL httpURL
The HttpURL to represent a WebDAV resource.


childResources

protected WebdavResources childResources
Table of the hrefs gotten in a collection.


defaultAction

protected static int defaultAction
The default action to find properties.


defaultDepth

protected static int defaultDepth
The default depth for WebDAV methods.


tempDirForGet

protected static java.lang.String tempDirForGet
Deprecated. The client is responsible for disk I/O.

The default temporary directory for the GET method.


useDiskForGet

protected static boolean useDiskForGet
Deprecated. The client is responsible for disk I/O.

The flag setter to use the disk for the GET method.


thisResource

protected boolean thisResource
The flag to set the status code by propfind.


allowedMethods

protected java.util.Enumeration allowedMethods
The allowed HTTP methods.


davCapabilities

protected java.util.Enumeration davCapabilities
The capabilities of the WebDAV server.


exists

protected boolean exists
An WebdavResource flag to check its existence;


overwrite

protected boolean overwrite
An WebdavResource flag to check overwriting;


latestStatusCode

protected int latestStatusCode
An status code performed by HTTP methods at the most recent.


latestStatusMessage

protected java.lang.String latestStatusMessage
An status message performed by HTTP methods at the most recent.


displayName

protected java.lang.String displayName
An WebDAV property, displayname.


getContentLength

protected long getContentLength
An WebDAV property, getcontentlength.


getContentType

protected java.lang.String getContentType
An WebDAV property, getcontenttype.


resourceType

protected ResourceTypeProperty resourceType
An WebDAV property, resourcetype.


getLastModified

protected long getLastModified
An WebDAV property, getlastmodified.


creationDate

protected long creationDate
An WebDAV property, creationdate.


getEtag

protected java.lang.String getEtag
An WebDAV property, getetag.


owner

protected java.lang.String owner
Owner information for locking and unlocking.


isHidden

protected boolean isHidden
An WebDAV property, ishidden.


isCollection

protected boolean isCollection
An WebDAV property, iscollection.


supportedLock

protected java.lang.String supportedLock
An WebDAV property, supportedlock.


lockDiscovery

protected LockDiscoveryProperty lockDiscovery
An WebDAV property, lockdiscovery.


followRedirects

protected boolean followRedirects

headers

protected java.util.Map headers
Map of additional headers

Constructor Detail

WebdavResource

protected WebdavResource()
The default constructor.


WebdavResource

protected WebdavResource(HttpClient client)
The constructor.


WebdavResource

public WebdavResource(HttpURL httpURL,
                      Credentials credentials,
                      int action,
                      int depth)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
credentials - The credentials to use for authentication.
action - The action to set properties of this resource.
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      int action,
                      int depth)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
action - The action to set properties of this resource.
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      int action,
                      int depth,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
action - The action to set properties of this resource.
depth - The depth to find properties.
followRedirects - shall redirects from the server be accepted
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      int depth)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      int depth,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
depth - The depth to find properties.
followRedirects - Shall redirects be followed automatically.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
followRedirects - shall redirects from the server be accepted

WebdavResource

public WebdavResource(HttpURL httpURL,
                      java.lang.String proxyHost,
                      int proxyPort)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
proxyHost - The hostname of the proxy to use.
proxyPort - The port number of the proxy to use.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      java.lang.String proxyHost,
                      int proxyPort,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException

WebdavResource

public WebdavResource(HttpURL httpURL,
                      java.lang.String proxyHost,
                      int proxyPort,
                      Credentials proxyCredentials)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The specified http URL.
proxyHost - The hostname of the proxy to use.
proxyPort - The port number of the proxy to use.
proxyCredentials - Credentials to use for proxy authentication.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      java.lang.String proxyHost,
                      int proxyPort,
                      Credentials proxyCredentials,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException

WebdavResource

public WebdavResource(java.lang.String escapedHttpURL)
               throws HttpException,
                      java.io.IOException
The constructor. It must be put an escaped http URL as an argument.

Parameters:
escapedHttpURL - The escaped http URL string.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(java.lang.String escapedHttpURL,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException

WebdavResource

public WebdavResource(java.lang.String escapedHttpURL,
                      Credentials credentials)
               throws HttpException,
                      java.io.IOException
The constructor. It must be put an escaped http URL as an argument.

Parameters:
escapedHttpURL - The escaped http URL string.
credentials - The credentials used for Authentication.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(java.lang.String escapedHttpURL,
                      Credentials credentials,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException

WebdavResource

public WebdavResource(java.lang.String escapedHttpURL,
                      java.lang.String proxyHost,
                      int proxyPort)
               throws HttpException,
                      java.io.IOException
The constructor. It must be put an escaped http URL as an argument.

Parameters:
escapedHttpURL - The escaped http URL string.
proxyHost - The hostname of the proxy to use.
proxyPort - The port number of the proxy to use.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(java.lang.String escapedHttpURL,
                      java.lang.String proxyHost,
                      int proxyPort,
                      Credentials proxyCredentials)
               throws HttpException,
                      java.io.IOException
The constructor. It must be put an escaped http URL as an argument.

Parameters:
escapedHttpURL - The escaped http URL string.
proxyHost - The hostname of the proxy to use.
proxyPort - The port number of the proxy to use.
proxyCredentials - Credentials to use for proxy authentication.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      java.lang.String additionalPath)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The http URL.
additionalPath - The added relative path.
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

WebdavResource

public WebdavResource(HttpURL httpURL,
                      java.lang.String additionalPath,
                      boolean followRedirects)
               throws HttpException,
                      java.io.IOException
The constructor.

Parameters:
httpURL - The http URL.
additionalPath - The added relative path.
followRedirects - shall redirects be accepted
Method Detail

generateTransactionHeader

protected void generateTransactionHeader(HttpMethod method)
Generates and adds the "Transaction" header if this method is part of an externally controlled transaction.


generateIfHeader

protected void generateIfHeader(HttpMethod method)
Generate and add the If header to the specified HTTP method.


generateAdditionalHeaders

protected void generateAdditionalHeaders(HttpMethod method)
Add all additionals headers that have been previously registered with addRequestHeader to the method


parseDate

protected java.util.Date parseDate(java.lang.String dateValue)
Parse the java.util.Date string for HTTP-date.

Returns:
The parsed date.

setNameProperties

protected void setNameProperties(int depth)
                          throws HttpException,
                                 java.io.IOException
Set only the displayname property for this resource.

Parameters:
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException

setBasicProperties

protected void setBasicProperties(int depth)
                           throws HttpException,
                                  java.io.IOException
Sets the basic properties on a resource by indirectly issuing a PROPFIND on the resource.

Properties retrieved include:

Parameters:
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException

setDefaultProperties

protected void setDefaultProperties(int depth)
                             throws HttpException,
                                    java.io.IOException
Set the default properties on the resource by indirectly issuing a PROPFIND request for a default set of properties.

Properties retrieved include:

Parameters:
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException

setNamedProp

protected void setNamedProp(int depth,
                            java.util.Vector propertyNames)
                     throws HttpException,
                            java.io.IOException
Set the named properties for this resource.

Parameters:
depth - The depth.
propertyNames - The property-names.
Throws:
HttpException
java.io.IOException

setAllProp

protected void setAllProp(int depth)
                   throws HttpException,
                          java.io.IOException
Set all properties for this resource.

Parameters:
depth - The depth
Throws:
HttpException
java.io.IOException

setWebdavProperties

protected void setWebdavProperties(java.util.Enumeration responses)
                            throws HttpException,
                                   java.io.IOException
Set WebDAV properties following to the given http URL. This method is fundamental for getting information of a collection.

Parameters:
responses - An enumeration over ResponseEntity items, one for each resource for which information was returned via PROPFIND.
Throws:
HttpException
java.io.IOException - The socket error with a server.

setDefaultAction

public static void setDefaultAction(int action)
Set the default action for this resource. The default action is set as 'BASIC' for the first time. ex) WebdavResource.NOACTION WebdavResource.NAME WebdavResource.BASIC WebdavResource.DEFAULT WebdavResource.ALL

Parameters:
action - The action type.
See Also:
NOACTION, NAME, BASIC, DEFAULT, ALL

getDefaultAction

public static int getDefaultAction()
Get the default action.

Returns:
The action type.

setDefaultDepth

public static void setDefaultDepth(int depth)
Set the default action for this resource. ex) DepthSupport.DEPTH_0 DepthSupport.DEPTH_1 DepthSupport.DEPTH_INFINITY

Parameters:
depth - The depth.

getDefaultDepth

public static int getDefaultDepth()
Get the default action.

Returns:
The depth.

setGetTempDir

public static void setGetTempDir(java.lang.String tempDir)
Deprecated. The given directory will not be used.

Get the default temporary directory for the GET method.

Parameters:
tempDir - The temporary directory.

getGetTempDir

public static java.lang.String getGetTempDir()
Deprecated. The returned directory is not used by the GET method.

Get the default temporary directory for the GET method. The default temporary directory is "temp/".

Returns:
The temporary directory path. It's set by default, if it returns null.

setGetUseDisk

public static void setGetUseDisk(boolean useDisk)
Deprecated. This method has no effect.

Set the use disk flag for the GET method.

Parameters:
useDisk - The use disk flag.

getGetUseDisk

public static boolean getGetUseDisk()
Deprecated. This method always returns false.

Get the use disk flag for the GET method.

Returns:
The current flag of the use disk. By default, it's true.

setFollowRedirects

public void setFollowRedirects(boolean value)
Sets a flag indicating that redirect responses from the server shall be followed.


getFollowRedirects

public boolean getFollowRedirects()
Returns the current "follow redirects" flag.

See Also:
setFollowRedirects(boolean)

isTheClient

protected boolean isTheClient()
                       throws URIException
Test that the httpURL is the same with the client.

Returns:
true if the given httpURL is the client for this resource.
Throws:
URIException

setClient

protected void setClient()
                  throws java.io.IOException
Set the client for this resource.

Throws:
java.io.IOException

setClient

protected void setClient(HttpURL httpURL)
                  throws java.io.IOException
Set the client for this resource and the given http URL.

Parameters:
httpURL - The http URL.
Throws:
java.io.IOException

setHttpURL

public void setHttpURL(HttpURL httpURL,
                       int action,
                       int depth)
                throws HttpException,
                       java.io.IOException
Set the HttpURL for this WebdavResource.

Parameters:
httpURL - the specified HttpURL.
action - The action to decide, which properties to find.
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String), setDefaultAction(int)

setHttpURL

public void setHttpURL(HttpURL httpURL,
                       int depth)
                throws HttpException,
                       java.io.IOException
Set the HttpURL for this WebdavResource.

Parameters:
httpURL - the specified HttpURL.
depth - The depth to find properties.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String)

setHttpURL

public void setHttpURL(HttpURL httpURL,
                       java.lang.String additionalPath,
                       int action,
                       int depth)
                throws HttpException,
                       java.io.IOException
Set the HttpURL for this WebdavResource. It must be put an escaped path part of the http URL as an argument.

Parameters:
httpURL - The specified HttpURL.
additionalPath - The added relative path.
action - The action to decide, which properties to find.
depth - The depth.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String), setDefaultAction(int)

setHttpURL

public void setHttpURL(HttpURL httpURL,
                       java.lang.String additionalPath,
                       int action)
                throws HttpException,
                       java.io.IOException
Set the HttpURL for this WebdavResource. It must be put an escaped path part of the http URL as an argument.

Parameters:
httpURL - The specified HttpURL.
additionalPath - The added relative path.
action - The action to decide, which properties to find.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String), setDefaultAction(int)

setHttpURL

public void setHttpURL(HttpURL httpURL,
                       java.lang.String additionalPath)
                throws HttpException,
                       java.io.IOException
Set the HttpURL for this WebdavResource.

Parameters:
httpURL - The specified HttpURL.
additionalPath - The added relative path.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String)

setHttpURL

public void setHttpURL(HttpURL httpURL)
                throws HttpException,
                       java.io.IOException
Set the HttpURL for this WebdavResource.

Parameters:
httpURL - the specified HttpURL.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String)

setHttpURL

public void setHttpURL(java.lang.String escapedHttpURL)
                throws HttpException,
                       java.io.IOException
Set the HttpURL of this WebdavResource. It must be put an escaped http URL as an argument.

Parameters:
escapedHttpURL - The escaped http URL string.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(HttpURL), setUserInfo(java.lang.String, java.lang.String), setPath(java.lang.String)

getHttpURL

public HttpURL getHttpURL()
Get the HttpURL of this WebdavResource.

Returns:
httpURL the http URL.

getHttpURLExceptForUserInfo

public HttpURL getHttpURLExceptForUserInfo()
                                    throws URIException
Get the HttpURL except for userinfo.

Returns:
httpURL the http URL.
Throws:
URIException

setPath

public void setPath(java.lang.String path)
             throws HttpException,
                    java.io.IOException
Set the path part of this WebdavResource.

Parameters:
path - the specified path.
Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(HttpURL), setHttpURL(java.lang.String), setUserInfo(java.lang.String, java.lang.String)

getPath

public java.lang.String getPath()
Get the path part of this WebdavResource. If the decoding of the path fails, this method will not throw an exception but return the escaped path instead.

Returns:
the path for this WebdavResource.
See Also:
URI.getPath(), setPath(java.lang.String)

getName

public java.lang.String getName()
Get the name of this WebdavResource. If the decoding of the name fails, this method will not throw an exception but return the escaped name instead.

Returns:
the name of this WebdavResource.
See Also:
URI.getName()

getHost

public java.lang.String getHost()
                         throws URIException
Get the hostname of this WebdavResource.

Returns:
the hostname.
Throws:
URIException

setUserInfo

public void setUserInfo(java.lang.String userName,
                        java.lang.String password)
                 throws HttpException,
                        java.io.IOException
Set the userinfo part of this WebdavResource.

Throws:
HttpException
java.io.IOException
See Also:
setHttpURL(HttpURL), setHttpURL(java.lang.String), setPath(java.lang.String)

addRequestHeader

public void addRequestHeader(java.lang.String header,
                             java.lang.String value)
Add a header in the request sent to the webdav server

Parameters:
header - Header name
value - Value

getDisplayName

public java.lang.String getDisplayName()
Get the value of DAV property, displayname.

Returns:
The displayname string.

setDisplayName

protected void setDisplayName(java.lang.String displayName)
Set the value of DAV property, displayname.

Parameters:
displayName - The displayname string.

getGetContentLength

public long getGetContentLength()
Get the value of DAV property, getcontentlength.

Returns:
The getcontentlength value.

setGetContentLength

protected void setGetContentLength(long getContentLength)
Set the value of DAV property, getcontentlength.

Parameters:
getContentLength - The getcontentlength value.

setGetContentLength

protected void setGetContentLength(java.lang.String getContentLength)
Set the value of DAV property, getcontentlength.

Parameters:
getContentLength - The getcontentlength value.

getResourceType

public ResourceTypeProperty getResourceType()
Get the value of DAV property, resourcetype.

Returns:
The resourcetype property.
See Also:
isCollection()

setResourceType

protected void setResourceType(ResourceTypeProperty resourceType)
Set the value of DAV property, resourcetype.

Parameters:
resourceType - The resourcetype property.

isCollection

public boolean isCollection()
Get the value of DAV property, resourcetype

Returns:
The resourcetype string.
See Also:
getResourceType(), getIsCollection()

getGetContentType

public java.lang.String getGetContentType()
Get the value of DAV property, getcontenttype.

Returns:
The getcontenttype string.

setGetContentType

protected void setGetContentType(java.lang.String getContentType)
Set the value of DAV property, getcontenttype.

Parameters:
getContentType - The getcontenttype string.

setContentType

public void setContentType(java.lang.String contentType)
Set the content-type to use for this resource, for PUTs.

Parameters:
contentType - The content-type string.

getGetLastModified

public long getGetLastModified()
Get the value of DAV property, getlastmodified.

Returns:
The getlastmodified value.

setGetLastModified

protected void setGetLastModified(long getLastModified)
Set the value of DAV property, getlastmodified.

Parameters:
getLastModified - The getlastmodified value.
See Also:
setGetLastModified(java.lang.String)

setGetLastModified

protected void setGetLastModified(java.lang.String getLastModified)
Set the value of DAV property, getlastmodified.

Parameters:
getLastModified - The getlastmodified value.
See Also:
setGetLastModified(long)

getCreationDate

public long getCreationDate()
Get the value of DAV property, creationdate.

Returns:
The creationdate string.

setCreationDate

protected void setCreationDate(long creationDate)
Set the value of DAV property, creationdate.

Parameters:
creationDate - The creationdate string.

setCreationDate

protected void setCreationDate(java.lang.String creationDate)
Set the value of DAV property, creationdate.

Parameters:
creationDate - The creationdate string.

getGetEtag

public java.lang.String getGetEtag()
Get the value of DAV property, getetag.

Returns:
The getetag string.

setGetEtag

protected void setGetEtag(java.lang.String getEtag)
Set the value of DAV property, getetag.

Parameters:
getEtag - The getetag string.

getOwner

public java.lang.String getOwner()
Get the owner string, as used for locking purposes.


getSupportedLock

public java.lang.String getSupportedLock()
Get the value of DAV property, supportedlock.

Returns:
The supportedlock string.

setSupportedLock

protected void setSupportedLock(java.lang.String supportedLock)
Set the value of DAV property, supportedlock.

Parameters:
supportedLock - The supportedlock string.

getLockDiscovery

public LockDiscoveryProperty getLockDiscovery()
Get the value of DAV property, lockdiscovery.

Returns:
The lockdiscovery property.

setLockDiscovery

protected void setLockDiscovery(LockDiscoveryProperty lockDiscovery)
Set the value of DAV property, lockdiscovery.

Parameters:
lockDiscovery - The lockdiscovery property.

getActiveLockOwners

public java.util.Enumeration getActiveLockOwners()
Get the activelock owners for this resource.

Returns:
An enumeration of owners.

isLocked

public boolean isLocked()
Test that this resource is locked.

Returns:
true if it's locked.

getIsHidden

public boolean getIsHidden()
Get the value of DAV property, ishidden.

Returns:
true if it is hidden, otherwise false.

setIsHidden

protected void setIsHidden(boolean isHidden)
Set the value of DAV property, ishidden.

Parameters:
isHidden -

setIsHidden

protected void setIsHidden(java.lang.String isHidden)
Set the value of DAV property, ishidden.

Parameters:
isHidden -

getIsCollection

public boolean getIsCollection()
Get the value of DAV property, iscollection

Returns:
true if it is collection, otherwise false.
See Also:
isCollection()

setIsCollection

protected void setIsCollection(boolean isCollection)
Set the value of DAV property, iscollection

Parameters:
isCollection -

setIsCollection

protected void setIsCollection(java.lang.String isCollection)
Set the value of DAV property, iscollection

Parameters:
isCollection -

setProperties

public void setProperties(int action,
                          int depth)
                   throws HttpException,
                          java.io.IOException
Set the properties for this resource.

Parameters:
action - The action to find properties for this resource.
depth - the depth to which properties shall be found
Throws:
HttpException
java.io.IOException
See Also:
setDefaultAction(int)

setProperties

public void setProperties(int depth)
                   throws HttpException,
                          java.io.IOException
Set the properties for this resource.

Parameters:
depth - the depth to which properties shall be found
Throws:
HttpException
java.io.IOException

refresh

protected void refresh()
                throws HttpException,
                       java.io.IOException
Refresh the properties of this resource without changing the status of the previous command

Throws:
HttpException
java.io.IOException

exists

public boolean exists()
Returns the last known information about the existence of this resource. This is a wrapper method for getExistence. A previous call to the method setProperties might be necessary to update that information.

Returns:
true if the resource is known to exist
false if the resource is known not to exist or its status is unknown.
See Also:
getExistence(), setProperties(int, int)

setExistence

protected void setExistence(boolean exists)
Set its existence.

Parameters:
exists - The boolean value to be set for its existence.

getExistence

public boolean getExistence()
Returns the last known information about the existence of this resource. A previous call to the method setProperties might be necessary to update that information.

Returns:
true if the resource is known to exist
false if the resource is known not to exist or its status is unknown.
See Also:
setProperties(int, int)

setOverwrite

public void setOverwrite(boolean overwrite)
Set the overwrite flag for COPY, MOVE, BIND and REBIND. Should be set before the method is executed.

Parameters:
overwrite - the overwrite flag
See Also:
getOverwrite()

getOverwrite

public boolean getOverwrite()
Get the current value of the overwrite flag for COPY, MOVE, BIND and REBIND.

Returns:
true if the current flag is overwriting.
See Also:
setOverwrite(boolean)

close

public void close()
           throws java.io.IOException
Close the session of this client

Throws:
java.io.IOException

getStatusMessage

public java.lang.String getStatusMessage()
Get the lastest value of the status message by HTTP methods.

Returns:
The http status string.

getStatusCode

public int getStatusCode()
Get the lastest value of the status code by HTTP methods.

Returns:
The http status code.

setStatusCode

protected void setStatusCode(int statusCode)
Set the lastest value of the status code by HTTP methods.

Parameters:
statusCode - the HTTP status code.

setStatusCode

protected void setStatusCode(int statusCode,
                             java.lang.String message)
Set the lastest value of the status code by HTTP methods.

Parameters:
statusCode - the HTTP status code.
message - the additional message.

getAllowedMethods

public java.util.Enumeration getAllowedMethods()
Get the allowed methods, checked by HTTP OPTIONS.

Returns:
the allowed HTTP methods.
See Also:
optionsMethod(java.lang.String)

getDavCapabilities

public java.util.Enumeration getDavCapabilities()
Get the WebDAV capabilities, checked by HTTP OPTIONS.

Returns:
the WebDAV capabilities.
See Also:
optionsMethod(java.lang.String)

getChildResources

public WebdavResources getChildResources()
                                  throws HttpException,
                                         java.io.IOException
Get all resources in this collection with the depth 1.

Returns:
resources in this collection with the depth 1.
Throws:
HttpException
java.io.IOException

listWebdavResources

public WebdavResource[] listWebdavResources()
                                     throws HttpException,
                                            java.io.IOException
Get an array of resources denoting the WebDAV child resources in the collection of this resources.

Returns:
An array of child resources in this resource.
Throws:
HttpException
java.io.IOException

list

public java.lang.String[] list()
Get an array of pathnames denoting the WebDAV resources in the collection denoted by this pathname.

Returns:
An array of pathnames denoting the resources, null if an IOException occurs.

listBasic

public java.util.Vector listBasic()
                           throws HttpException,
                                  java.io.IOException
Get an array of pathnames and basic information denoting the WebDAV resources in the denoted by this pathname. array 0: displayname array 1: getcontentlength array 2: iscollection or getcontentype array 3: getlastmodifieddate array 4: name

Returns:
An array of pathnames and more denoting the resources.
Throws:
HttpException
java.io.IOException

setEncodeURLs

public void setEncodeURLs(boolean encodeURLs)
Deprecated. No longer has any effect.

Set the URL encoding flag for this http URL.

Parameters:
encodeURLs - true if it is encoded.
Throws:
MalformedURLException
java.io.IOException

retrieveSessionInstance

public HttpClient retrieveSessionInstance()
                                   throws java.io.IOException
Retrieve the current http client for this resource.

Returns:
The http client.
Throws:
java.io.IOException
See Also:
executeHttpRequestMethod(HttpClient, HttpMethod)

executeHttpRequestMethod

public int executeHttpRequestMethod(HttpClient client,
                                    HttpMethod method)
                             throws java.io.IOException,
                                    HttpException
Execute the http request method. And get its status code.

Parameters:
client - The http client.
method - The http method.
Returns:
The status code.
Throws:
java.io.IOException
HttpException
See Also:
retrieveSessionInstance()

aclMethod

public boolean aclMethod(java.lang.String path,
                         Ace[] aces)
                  throws HttpException,
                         java.io.IOException
Updates the resource with a new set of aces.

Parameters:
path - the server relative path of the resource to which the given ACEs shall be applied
aces - the ACEs to apply
Returns:
true if the method succeeded
Throws:
HttpException
java.io.IOException

aclfindMethod

public AclProperty aclfindMethod()
                          throws HttpException,
                                 java.io.IOException
Return the AclProperty for the current resource

Returns:
acl property, null if the server doesn't respond with AclProperty
Throws:
HttpException
java.io.IOException

aclfindMethod

public AclProperty aclfindMethod(java.lang.String path)
                          throws HttpException,
                                 java.io.IOException
Return the AclProperty for the resource at the given path

Parameters:
path - the server relative path of the resource to request
Returns:
acl property, null if the server doesn't respond with AclProperty
Throws:
HttpException
java.io.IOException

principalCollectionSetFindMethod

public PrincipalCollectionSetProperty principalCollectionSetFindMethod()
                                                                throws HttpException,
                                                                       java.io.IOException
Get the PrincipalCollectionSetProperty for the current resource.

Returns:
principal collection set Property, null if the server doesn't respond with a PrincipalCollectionSetProperty
Throws:
HttpException
java.io.IOException

principalCollectionSetFindMethod

public PrincipalCollectionSetProperty principalCollectionSetFindMethod(java.lang.String path)
                                                                throws HttpException,
                                                                       java.io.IOException
Get the PrincipalCollectionSetProperty for the resource.

Parameters:
path - the server relative path of the resource to request
Returns:
principal collection set Property, null if the server doesn't respond with a PrincipalCollectionSetProperty
Throws:
HttpException
java.io.IOException

lockDiscoveryPropertyFindMethod

public LockDiscoveryProperty lockDiscoveryPropertyFindMethod()
                                                      throws HttpException,
                                                             java.io.IOException
Return the LockDiscoveryProperty for the current resource

Returns:
null if the server doesn't respond with a LockDiscoveryProperty
Throws:
HttpException
java.io.IOException

lockDiscoveryPropertyFindMethod

public LockDiscoveryProperty lockDiscoveryPropertyFindMethod(java.lang.String path)
                                                      throws HttpException,
                                                             java.io.IOException
Return the LockDiscoveryProperty for the resource at the given path

Parameters:
path - the server relative path of the resource to request
Returns:
null if the server doesn't respond with a LockDiscoveryProperty
Throws:
HttpException
java.io.IOException

getMethodData

public java.io.InputStream getMethodData()
                                  throws HttpException,
                                         java.io.IOException
Get InputStream for the GET method.

Returns:
InputStream
Throws:
HttpException
java.io.IOException

getMethodData

public java.io.InputStream getMethodData(java.lang.String path)
                                  throws HttpException,
                                         java.io.IOException
Get InputStream for the GET method for the given path.

Parameters:
path - the server relative path of the resource to get
Returns:
InputStream
Throws:
HttpException
java.io.IOException

getMethodDataAsString

public java.lang.String getMethodDataAsString()
                                       throws HttpException,
                                              java.io.IOException
Get data as a String for the GET method.

Returns:
the contents of this resource as a string
Throws:
HttpException
java.io.IOException

getMethodDataAsString

public java.lang.String getMethodDataAsString(java.lang.String path)
                                       throws HttpException,
                                              java.io.IOException
Get data as a String for the GET method for the given path.

Parameters:
path - the server relative path of the resource to get
Returns:
the contents of the given resource as a string
Throws:
HttpException
java.io.IOException

getMethod

public boolean getMethod(java.io.File file)
                  throws HttpException,
                         java.io.IOException
Execute the GET method for this WebdavResource path.

Parameters:
file - The local file.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

getMethod

public boolean getMethod(java.lang.String path,
                         java.io.File file)
                  throws HttpException,
                         java.io.IOException
Execute the GET method for the given path.

Parameters:
path - the server relative path of the resource to get
file - The local file.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(byte[] data)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for this resource.

Parameters:
data - The byte array.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.lang.String path,
                         byte[] data)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for the given path.

Parameters:
path - the server relative path to put the data
data - The byte array.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.io.InputStream is)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for this resource.

Parameters:
is - The input stream.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.lang.String path,
                         java.io.InputStream is)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for the given path.

Parameters:
path - the server relative path to put the data
is - The input stream.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.lang.String data)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for this WebdavResource.

Parameters:
data - String data to send.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.lang.String path,
                         java.lang.String data)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for the given path.

Parameters:
path - the server relative path to put the data
data - String to send.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.io.File file)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for this WebdavResource.

Parameters:
file - the filename to get on local.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.lang.String path,
                         java.io.File file)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for the given path.

Parameters:
path - the server relative path to put the given file
file - the filename to get on local.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.net.URL url)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for this resource from the given url. It's like a streaming copy about a resource of the specified remote url to another remote url of this resource.

Parameters:
url - The URL to get a resource.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

putMethod

public boolean putMethod(java.lang.String path,
                         java.net.URL url)
                  throws HttpException,
                         java.io.IOException
Execute the PUT method for the given path from the given url.

Parameters:
path - the server relative path to put the data
url - The URL to get a resource.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

optionsMethod

public boolean optionsMethod()
                      throws HttpException,
                             java.io.IOException
Execute OPTIONS method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

optionsMethod

public boolean optionsMethod(java.lang.String path)
                      throws HttpException,
                             java.io.IOException
Execute OPTIONS method for the given path.

Parameters:
path - the server relative path of the resource to request
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException
See Also:
getAllowedMethods()

optionsMethod

public boolean optionsMethod(java.lang.String path,
                             java.lang.String aMethod)
                      throws HttpException,
                             java.io.IOException
Execute OPTIONS method for the given path.

Parameters:
path - the server relative path to send the request
aMethod - a method to check it's supported.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

optionsMethod

public java.util.Enumeration optionsMethod(HttpURL httpURL)
                                    throws HttpException,
                                           java.io.IOException
Execute OPTIONS method for the given http URL.

Parameters:
httpURL - the http URL.
Returns:
the allowed methods and capabilities.
Throws:
HttpException
java.io.IOException

optionsMethod

public java.util.Enumeration optionsMethod(HttpURL httpURL,
                                           int type)
                                    throws HttpException,
                                           java.io.IOException
Execute OPTIONS method for the given http URL, DELTAV

Parameters:
httpURL - the http URL.
Returns:
the allowed methods and capabilities.
Throws:
HttpException
java.io.IOException

optionsMethod

public java.util.Enumeration optionsMethod(java.lang.String path,
                                           int type)
                                    throws HttpException,
                                           java.io.IOException
Execute OPTIONS method for the given path.

Parameters:
path - the server relative path of the resource to request
Returns:
the allowed methods and capabilities.
Throws:
HttpException
java.io.IOException
See Also:
getAllowedMethods()

labelMethod

public boolean labelMethod(java.lang.String labelname,
                           int type)
                    throws HttpException,
                           java.io.IOException
Execute a LABEL method on the current path, setting the given label

Parameters:
labelname - the label to set
type - the type of action. One of:
  • LABEL_ADD
  • LABEL_REMOVE
  • LABEL_SET
Returns:
true if the method succeeded
Throws:
HttpException
java.io.IOException

labelMethod

public boolean labelMethod(java.lang.String path,
                           java.lang.String labelname,
                           int type)
                    throws HttpException,
                           java.io.IOException
Execute a LABEL method on the given path, setting the given label

Parameters:
path - the server relative path of the resource to act on
labelname - the label to set
type - the type of action. One of:
  • LABEL_ADD
  • LABEL_REMOVE
  • LABEL_SET
Returns:
true if the method succeeded
Throws:
HttpException
java.io.IOException

reportMethod

public java.util.Enumeration reportMethod(HttpURL httpURL,
                                          int depth)
                                   throws HttpException,
                                          java.io.IOException
Execute the REPORT method.

Throws:
HttpException
java.io.IOException

reportMethod

public java.util.Enumeration reportMethod(HttpURL httpURL,
                                          java.util.Vector properties)
                                   throws HttpException,
                                          java.io.IOException
Throws:
HttpException
java.io.IOException

reportMethod

public java.util.Enumeration reportMethod(HttpURL httpURL,
                                          java.util.Vector properties,
                                          int depth)
                                   throws HttpException,
                                          java.io.IOException
Throws:
HttpException
java.io.IOException

reportMethod

public java.util.Enumeration reportMethod(HttpURL httpURL,
                                          java.util.Vector properties,
                                          java.util.Vector histUri,
                                          int depth)
                                   throws HttpException,
                                          java.io.IOException
Throws:
HttpException
java.io.IOException

reportMethod

public java.util.Enumeration reportMethod(HttpURL httpURL,
                                          java.lang.String sQuery,
                                          int depth)
                                   throws HttpException,
                                          java.io.IOException
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(int depth)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method with allprop for this WebdavResource. Get list of all WebDAV properties on this WebDAV resource.

Once used this method, the the status code in the 207 reponse is need to be set for the method of WebdavResource.

The values of DepthSupport.DEPTH_0, DepthSupport.DEPTH_1, DepthSupport.DEPTH_INFINITY is possbile for the depth.

Parameters:
depth -
Returns:
an enumeration of ResponseEntity
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(java.lang.String path,
                                            int depth)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method with allprop for the given path. Get list of all WebDAV properties on the given resource.

Once used this method, the the status code in the 207 reponse is need to be set for the method of WebdavResource.

The values of DepthSupport.DEPTH_0, DepthSupport.DEPTH_1, DepthSupport.DEPTH_INFINITY is possbile for the depth.

Parameters:
path - the server relative path of the resource to request
depth -
Returns:
an enumeration of ResponseEntity
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(int depth,
                                            java.util.Vector properties)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method with by propname for this resource. Get list of named WebDAV properties on this resource.

Once used this method, the the status code in the 207 reponse is need to be set for the method of WebdavResource.

The values of DepthSupport.DEPTH_0, DepthSupport.DEPTH_1 DepthSupport.DEPTH_INFINITY is possbile for the depth.

Parameters:
depth - The depth.
properties - The named properties.
Returns:
an enumeration of ResponseEntity
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(java.lang.String path,
                                            int depth,
                                            java.util.Vector properties)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method with by propname for the given path. Get list of named WebDAV properties on the given resource.

Once used this method, the the status code in the 207 reponse is need to be set for the method of WebdavResource.

The values of DepthSupport.DEPTH_0, DepthSupport.DEPTH_1 DepthSupport.DEPTH_INFINITY is possbile for the depth.

Parameters:
path - the server relative path of the resource to request
depth - The depth.
properties - The named properties.
Returns:
an enumeration of ResponseEntity
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(java.lang.String propertyName)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method for this WebdavResource. Get list of given WebDAV properties on this WebDAV resource.

Parameters:
propertyName - the WebDAV property to find.
Returns:
Enumeration list of WebDAV properties on a resource.
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(java.lang.String path,
                                            java.lang.String propertyName)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method for the given WebdavResource path. Get list of given WebDAV properties on this WebDAV resource.

Parameters:
path - the server relative path of the resource to request
propertyName - the WebDAV property to find.
Returns:
Enumeration list of WebDAV properties on a resource.
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(java.util.Vector properties)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method for this WebdavResource. Get list of given WebDAV properties on this WebDAV resource.

Parameters:
properties - the WebDAV properties to find.
Returns:
Enumeration list of WebDAV properties on a resource.
Throws:
HttpException
java.io.IOException

propfindMethod

public java.util.Enumeration propfindMethod(java.lang.String path,
                                            java.util.Vector properties)
                                     throws HttpException,
                                            java.io.IOException
Execute PROPFIND method for the given path and properties. Get list of given WebDAV properties on the given resource.

Parameters:
path - the server relative path of the resource to request
properties - the WebDAV properties to find.
Returns:
Enumeration list of WebDAV properties on a resource.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String propertyName,
                               java.lang.String propertyValue)
                        throws HttpException,
                               java.io.IOException
Deprecated. it could be removed after the major version changes

Execute PROPATCH method for this WebdavResource.

Parameters:
propertyName - the name of the property to set
propertyValue - the value of the property to set
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String propertyName,
                               java.lang.String propertyValue,
                               boolean action)
                        throws HttpException,
                               java.io.IOException
Execute PROPATCH method for this resource with the given property.

Parameters:
propertyName - the property name string (in "DAV:" namespace)
propertyValue - the property value string If the proppatch action is being removed, the value is null or any.
action - true if it's being set, false if it's being removed
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(PropertyName propertyName,
                               java.lang.String propertyValue)
                        throws HttpException,
                               java.io.IOException
Deprecated. it could be removed after the major version changes

Execute PROPATCH method for this WebdavResource.

Parameters:
propertyName - the name of the property to set
propertyValue - the value of the property to set
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(PropertyName propertyName,
                               java.lang.String propertyValue,
                               boolean action)
                        throws HttpException,
                               java.io.IOException
Execute PROPATCH method for this resource with the given property.

Parameters:
propertyName - the name of the property to set
propertyValue - the value of the property to set If the proppatch action is being removed, the value is null or any.
action - true if it's being set, false if it's being removed
Returns:
true if the method is succeeded
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String path,
                               java.lang.String propertyName,
                               java.lang.String propertyValue)
                        throws HttpException,
                               java.io.IOException
Deprecated. it could be removed after the major version changes

Execute PROPATCH method for the given WebdavResource.

Parameters:
path - the server relative path of the resource to act on
propertyName - the property name in "DAV:" namespace
propertyValue - the property value string
Returns:
true if the method is succeeded
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String path,
                               java.lang.String propertyName,
                               java.lang.String propertyValue,
                               boolean action)
                        throws HttpException,
                               java.io.IOException
Execute PROPATCH method for the specified resource with the given property.

Parameters:
path - the server relative path of the resource to act on
propertyName - the property name string (in "DAV:" namespace)
propertyValue - the property value string If the proppatch action is being removed, the value is null or any.
action - true if it's to be set, false if it's to be removed
Returns:
true if the method is succeeded
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String path,
                               PropertyName propertyName,
                               java.lang.String propertyValue)
                        throws HttpException,
                               java.io.IOException
Deprecated. it could be removed after the major version changes

Execute PROPATCH method for the given WebdavResource.

Parameters:
path - the server relative path of the resource to act on
propertyName - the property name.
propertyValue - the property value.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String path,
                               PropertyName propertyName,
                               java.lang.String propertyValue,
                               boolean action)
                        throws HttpException,
                               java.io.IOException
Execute PROPATCH method for the given resource with the given properties.

Parameters:
path - the server relative path of the resource to act on
propertyName - the property name
propertyValue - the property value string If the proppatch action is being removed, the value is null or any.
action - true if it's to be set, false if it's to be removed
Returns:
true if the method is succeeded
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.util.Hashtable properties)
                        throws HttpException,
                               java.io.IOException
Deprecated. it could be removed after the major version changes

Execute PROPATCH method for this WebdavResource.

Parameters:
properties - name and value pairs to set (name can be a String or PropertyName)
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.util.Hashtable properties,
                               boolean action)
                        throws HttpException,
                               java.io.IOException
Execute PROPATCH method for this resource with the given properties.

Parameters:
properties - the name(= String or PropertyName and value(= String) pairs for proppatch action If the proppatch action is being removed, the value is null or any.
action - true if it's being set, false if it's being removed
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String path,
                               java.util.Hashtable properties)
                        throws HttpException,
                               java.io.IOException
Deprecated. it could be removed after the major version changes

Execute PROPATCH method for the given WebdavResource.

Parameters:
path - the server relative path of the resource to act on
properties - name and value pairs to set (name can be a String or PropertyName)
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

proppatchMethod

public boolean proppatchMethod(java.lang.String path,
                               java.util.Hashtable properties,
                               boolean action)
                        throws HttpException,
                               java.io.IOException
Execute PROPATCH method for the specified resource with the given properties.

Parameters:
path - the server relative path of the resource to act on
properties - the name(= String or PropertyName and value(= String) pairs for proppatch action If the proppatch action is being removed, the value is null or any.
action - true if it's being set, false if it's being removed
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

headMethod

public boolean headMethod()
                   throws HttpException,
                          java.io.IOException
Execute the HEAD method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

headMethod

public boolean headMethod(java.lang.String path)
                   throws HttpException,
                          java.io.IOException
Execute the HEAD method for the given path.

Parameters:
path - the server relative path of the resource to request
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

deleteMethod

public boolean deleteMethod()
                     throws HttpException,
                            java.io.IOException
Execute the DELETE method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

deleteMethod

public boolean deleteMethod(java.lang.String path)
                     throws HttpException,
                            java.io.IOException
Execute the DELETE method for the given path.

Parameters:
path - the server relative path of the resource to delete
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

moveMethod

public boolean moveMethod(java.lang.String destination)
                   throws HttpException,
                          java.io.IOException
Execute the MOVE method for this WebdavReource.

Parameters:
destination - the destination to move to as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

moveMethod

public boolean moveMethod(java.lang.String source,
                          java.lang.String destination)
                   throws HttpException,
                          java.io.IOException
Execute the MOVE method for the given source and destination.

Parameters:
source - the source resource as a server relativ path
destination - the destination to move to as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

copyMethod

public boolean copyMethod(java.lang.String destination)
                   throws HttpException,
                          java.io.IOException
Execute the COPY method for the given destination path.

Parameters:
destination - the destination as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

copyMethod

public boolean copyMethod(java.lang.String source,
                          java.lang.String destination)
                   throws HttpException,
                          java.io.IOException
Execute the COPY method the given source and destination.

Parameters:
source - the source resource as a server relative path
destination - the destination as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

mkcolMethod

public boolean mkcolMethod()
                    throws HttpException,
                           java.io.IOException
Execute the MKCOL method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

mkcolMethod

public boolean mkcolMethod(java.lang.String path)
                    throws HttpException,
                           java.io.IOException
Execute the MKCOL method for the given path.

Parameters:
path - the server relative path at which to create a new collection resource
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod()
                   throws HttpException,
                          java.io.IOException
Execute the LOCK method for this WebdavResource. This method tries to acquire an exclusive write lock with a timeout of 120 seconds.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod(java.lang.String owner,
                          int timeout)
                   throws HttpException,
                          java.io.IOException
Execute the LOCK method for this WebdavResource. This method tries to acquire an exclusive write lock with the given timeout value.

Parameters:
owner - the owner string.
timeout - the timeout
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod(java.lang.String path)
                   throws HttpException,
                          java.io.IOException
Execute the LOCK method for the given path. This method tries to acquire an exclusive write lock with a timeout of 120 seconds.

Parameters:
path - the server relative path of the resource to lock
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod(java.lang.String path,
                          java.lang.String owner,
                          int timeout)
                   throws HttpException,
                          java.io.IOException
Execute the LOCK method for the given path. This method tries to acquire an exclusive write lock with the given timeout value.

Parameters:
path - the server relative path of the resource to lock
owner - The owner string.
timeout - the timeout value.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod(java.lang.String path,
                          java.lang.String owner,
                          int timeout,
                          short lockType)
                   throws HttpException,
                          java.io.IOException
Execute the LOCK method for the given path. This method tries to acquire an exclusive write lock with the given timeout value.

Parameters:
path - the server relative path of the resource to lock
owner - The owner string.
timeout - the timeout value.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod(java.lang.String path,
                          java.lang.String owner,
                          int timeout,
                          short lockType,
                          int depth)
                   throws HttpException,
                          java.io.IOException
Execute the LOCK method for the given path. This method tries to acquire an exclusive write lock with the given timeout value.

Parameters:
path - the server relative path of the resource to lock
owner - The owner string.
timeout - the timeout value.
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

lockMethod

public boolean lockMethod(java.lang.String owner,
                          short timeout)
                   throws HttpException,
                          java.io.IOException
Deprecated. The timeout value MUST NOT be greater than 2^32-1.

Execute the LOCK method for this WebdavResource.

Throws:
HttpException
java.io.IOException
See Also:
LockMethod

lockMethod

public boolean lockMethod(java.lang.String path,
                          java.lang.String owner,
                          short timeout)
                   throws HttpException,
                          java.io.IOException
Deprecated. The timeout value MUST NOT be greater than 2^32-1.

Execute the LOCK method for the given path.

Throws:
HttpException
java.io.IOException
See Also:
LockMethod

startTransaction

public boolean startTransaction(java.lang.String owner,
                                int timeout)
                         throws java.io.IOException
Begins a new transaction. The transaction handle returned by the WebDAV server will be remembered and included as a header of subsequent requests until either commitTransaction() or abortTransaction() are called. You can retrieve it using getTransactionHandle().

Parameters:
owner - the owner of this transaction
timeout - timeout in milleseconds
Returns:
true if the transaction has been successfully started, false otherwise
Throws:
java.io.IOException - if anything goes wrong
See Also:
commitTransaction(), abortTransaction(), getTransactionHandle()

getTransactionHandle

public java.lang.String getTransactionHandle()
                                      throws java.io.IOException
Returns the transaction handle set by startTransaction(String, int).

Returns:
the current transaction handle or null if the client does not operate inside a transaction
Throws:
java.io.IOException - if anything goes wrong
See Also:
startTransaction(String, int)

commitTransaction

public boolean commitTransaction()
                          throws java.io.IOException
Commits the transaction started by startTransaction(String, int) and resets the transaction handle.

Returns:
true if the transaction has been successfully committed, false otherwise
Throws:
java.io.IOException - if anything goes wrong
See Also:
startTransaction(String, int), abortTransaction(), getTransactionHandle()

abortTransaction

public boolean abortTransaction()
                         throws java.io.IOException
Aborts - i.e. rolls back all changes of - the transaction started by startTransaction(String, int) and resets the transaction handle.

Returns:
true if the transaction has been successfully committed, false otherwise
Throws:
java.io.IOException - if anything goes wrong
See Also:
startTransaction(String, int), abortTransaction(), getTransactionHandle()

endTransaction

protected boolean endTransaction(java.lang.String path,
                                 int transactionStatus)
                          throws java.io.IOException
Throws:
java.io.IOException

unlockMethod

public boolean unlockMethod()
                     throws HttpException,
                            java.io.IOException
Execute the Unlock method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

unlockMethod

public boolean unlockMethod(java.lang.String path)
                     throws HttpException,
                            java.io.IOException
Execute the Unlock method for the given path.

Parameters:
path - the server relative path of the resource to unlock
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

unlockMethod

public boolean unlockMethod(java.lang.String path,
                            java.lang.String owner)
                     throws HttpException,
                            java.io.IOException
Execute the Unlock method for the given path.

Parameters:
path - the server relative path of the resource to unlock
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

discoverOwnLocks

public void discoverOwnLocks()
                      throws HttpException,
                             java.io.IOException
Discover and refresh lock tokens.

Throws:
HttpException
java.io.IOException

discoverOwnLocks

public void discoverOwnLocks(java.lang.String owner)
                      throws HttpException,
                             java.io.IOException
Discover and refresh lock tokens for a specific owner.

Parameters:
owner - the owner who's locks are to be discovered.
Throws:
HttpException
java.io.IOException

discoverLock

protected WebdavState discoverLock(java.lang.String owner,
                                   java.lang.String path,
                                   WebdavState state)
Discover the given owner and locktoken and set the locktoken

Parameters:
owner - the activelock owner
path - the server relative path of the resource to request
state - the state to save the locktoken
Returns:
state probably having lock information renewly

updateMethod

public boolean updateMethod(java.lang.String target)
                     throws HttpException,
                            java.io.IOException
Update this resource to the specified target

Parameters:
target - the path of the history element to update this resource from
Returns:
true if the method has succeeded
Throws:
HttpException
java.io.IOException

updateMethod

public boolean updateMethod(java.lang.String path,
                            java.lang.String target)
                     throws HttpException,
                            java.io.IOException
Update the specified resource to the specified target

Parameters:
path - the server relative path of the resource to update
target - path of the target to update from (history resource)
Returns:
true if the method has succeeded
Throws:
HttpException
java.io.IOException

versionControlMethod

public boolean versionControlMethod(java.lang.String path)
                             throws HttpException,
                                    java.io.IOException
Throws:
HttpException
java.io.IOException

versionControlMethod

public boolean versionControlMethod(java.lang.String path,
                                    java.lang.String target)
                             throws HttpException,
                                    java.io.IOException
Throws:
HttpException
java.io.IOException

mkWorkspaceMethod

public boolean mkWorkspaceMethod()
                          throws HttpException,
                                 java.io.IOException
Execute the MKWORKSPACE method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

mkWorkspaceMethod

public boolean mkWorkspaceMethod(java.lang.String path)
                          throws HttpException,
                                 java.io.IOException
Execute the MKCOL method for the given path.

Parameters:
path - the server relative path at which to create a new workspace resource
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

compareToWebdavResource

public int compareToWebdavResource(WebdavResource another)
Compare to the WebdavResource object.

Parameters:
another - the other WebdavResource object
Returns:
the value 0 if the argument is equal.

compareTo

public int compareTo(java.lang.Object another)
Compare to the given another object.

Parameters:
another - the other WebdavResource object
Returns:
the value 0 if another is equal.

equals

public boolean equals(java.lang.Object obj)
Test the object.

Parameters:
obj - the other object
Returns:
true if it's equal.

toString

public java.lang.String toString()
Return the http URL string.

Returns:
the http URL string.

checkinMethod

public boolean checkinMethod()
                      throws HttpException,
                             java.io.IOException
Execute the CHECKIN method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

checkinMethod

public boolean checkinMethod(java.lang.String path)
                      throws HttpException,
                             java.io.IOException
Execute the CHECKIN method for the given path.

Parameters:
path - the server relative path of the resource to check in
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

checkoutMethod

public boolean checkoutMethod()
                       throws HttpException,
                              java.io.IOException
Execute the CHECKOUT method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

checkoutMethod

public boolean checkoutMethod(java.lang.String path)
                       throws HttpException,
                              java.io.IOException
Execute the CHECKOUT method for the given path.

Parameters:
path - the server relative path of the resource to check out
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

uncheckoutMethod

public boolean uncheckoutMethod()
                         throws HttpException,
                                java.io.IOException
Execute the CHECKOUT method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

uncheckoutMethod

public boolean uncheckoutMethod(java.lang.String path)
                         throws HttpException,
                                java.io.IOException
Execute the CHECKOUT method for the given path.

Parameters:
path - the server relative path of the resource to act on
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

createWebdavResource

protected WebdavResource createWebdavResource(HttpClient client)
Create a new WebdavResource object (as a seperate method so that it can be overridden by subclasses.

Parameters:
client - HttpClient to be used by this webdavresource.
Returns:
A new WebdavResource object.

processProperty

protected void processProperty(Property property)
Process a property, setting various member variables depending on what the property is.

Parameters:
property - The property to process.

aclReportMethod

public java.util.Enumeration aclReportMethod(java.lang.String path,
                                             java.util.Collection properties,
                                             int reportType)
                                      throws HttpException,
                                             java.io.IOException
Execute REPORT method. This method is for the special Access Control Reports: - acl-principal-prop-set (not supported yet) - principal-match (not supported yet) - principal-property-search - principal-search-property-set (not supported yet)

Parameters:
path - the server relative path of the resource to request
properties - The named properties.
Returns:
an enumeration of ResponseEntity
Throws:
HttpException
java.io.IOException

bindMethod

public boolean bindMethod(java.lang.String newBinding)
                   throws HttpException,
                          java.io.IOException
Execute the BIND method for this WebdavResource, given an existing path to bind with.

Parameters:
newBinding - the new binding as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException
See Also:
setOverwrite(boolean)

bindMethod

public boolean bindMethod(java.lang.String existingBinding,
                          java.lang.String newBinding)
                   throws HttpException,
                          java.io.IOException
Execute the BIND method given the new path to bind to an existing path.

Parameters:
existingBinding - the existing binding as a server relative path
newBinding - the new binding as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException
See Also:
setOverwrite(boolean)

unbindMethod

public boolean unbindMethod()
                     throws HttpException,
                            java.io.IOException
Execute the UNBIND method for this WebdavResource.

Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

unbindMethod

public boolean unbindMethod(java.lang.String binding)
                     throws HttpException,
                            java.io.IOException
Execute the UNBIND method given the resource to Unbind.

Parameters:
binding - the server relative path of the resource to unbind
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException

rebindMethod

public boolean rebindMethod(java.lang.String newBinding)
                     throws HttpException,
                            java.io.IOException
Execute the Rebind method for this WebdavResource given the new Resource to bind with. The REBIND method removes a binding to a resource from one collection, and adds a binding to that resource into another collection. It is effectively an atomic form of a MOVE request.

Parameters:
newBinding - the new binding as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException
See Also:
setOverwrite(boolean)

rebindMethod

public boolean rebindMethod(java.lang.String existingBinding,
                            java.lang.String newBinding)
                     throws HttpException,
                            java.io.IOException
Execute the Rebind method given a resource to rebind and the new Resource to bind with. The REBIND method removes a binding to a resource from one collection, and adds a binding to that resource into another collection. It is effectively an atomic form of a MOVE request

Parameters:
existingBinding - the existing binding as a server relative path
newBinding - the new binding as a server relative path
Returns:
true if the method is succeeded.
Throws:
HttpException
java.io.IOException
See Also:
setOverwrite(boolean)

subscribeMethod

public Subscription subscribeMethod(java.lang.String path,
                                    java.lang.String notificationType,
                                    java.lang.String callback,
                                    long notificationDelay,
                                    int depth,
                                    long lifetime)
                             throws HttpException,
                                    java.io.IOException
Subscribes for notifications for modifications of WebDAV resources.

Parameters:
path - URL path of the resource that is to be subscribed
notificationType -
callback - the URL to be registered for notification, may be null if no callback shall be registered.
notificationDelay -
depth - the depth of the subscription (for valid values see DepthSupport)
lifetime - duration of that subscription in seconds (Note: the server may change this and return an other one; see Subscription.getLifetime().
Returns:
a Subscription or null if an error occurs
Throws:
HttpException
java.io.IOException

subscribeMethod

public boolean subscribeMethod(java.lang.String path,
                               int subscriptionId)
                        throws HttpException,
                               java.io.IOException
Refreshes a subscription.

Returns:
true on success.
Throws:
HttpException
java.io.IOException

subscribeMethod

public boolean subscribeMethod(Subscription subscription)
                        throws HttpException,
                               java.io.IOException
Refreshes a subscription.

Parameters:
subscription - The subscription to be refreshed.
Returns:
true on success
Throws:
HttpException
java.io.IOException

unsubscribeMethod

public boolean unsubscribeMethod(java.lang.String path,
                                 int subscriptionId)
                          throws HttpException,
                                 java.io.IOException
Cancels a subscription.

Parameters:
path - URL path for that was subscribed
Returns:
true on success
Throws:
HttpException
java.io.IOException

unsubscribeMethod

public boolean unsubscribeMethod(Subscription subscription)
                          throws HttpException,
                                 java.io.IOException
Cancels a subscription.

Parameters:
subscription -
Returns:
true on success
Throws:
HttpException
java.io.IOException

pollMethod

public boolean pollMethod(java.lang.String contentLocation,
                          int subscriptionId)
                   throws HttpException,
                          java.io.IOException
Asks the server whether events for a given subscription are fired.

Parameters:
contentLocation - URL path returned by the SUBSCRIBE methods Content-Location header
subscriptionId - id of the subscription
Returns:
true if an event was fired
Throws:
HttpException
java.io.IOException

pollMethod

public boolean pollMethod(Subscription subscription)
                   throws HttpException,
                          java.io.IOException
Asks the server whether events for a given subscription are fired.

Parameters:
subscription - the subscription to ask for
Returns:
true if an event was fired
Throws:
HttpException
java.io.IOException