Package org.apache.catalina.servlets

# Interface WebdavServlet.PropertyStore

Enclosing class:
  WebdavServlet

public static interface WebdavServlet.PropertyStore
Handling of dead properties on resources. This interface allows providing storage for dead properties. Store configuration is done through the `propertyStore` init parameter of the WebDAV Servlet, which should contain the class name of the store.

## Method Summary

Modifier and Type
Method
Description
`void`
`copy(String source, String destination)`
Copy resource.
`void`
`delete(String resource)`
Delete specified resource.
`void`
`destroy()`
Destroy the store.
`void`
`init()`
Initialize the store.
`void`
`periodicEvent()`
Periodic event for maintenance tasks.
`boolean`
`propfind(String resource, Node property, boolean nameOnly, XMLWriter generatedXML)`
Generate propfind XML fragments for dead properties.
`void`
`proppatch(String resource, ArrayList<WebdavServlet.ProppatchOperation> operations)`
Apply proppatch to the specified resource.

## Method Details

### init

void init()
Initialize the store. This is tied to the Servlet lifecycle and is called by its init method.

### destroy

void destroy()
Destroy the store. This is tied to the Servlet lifecycle and is called by its destroy method.

### periodicEvent

void periodicEvent()
Periodic event for maintenance tasks.

### copy

void copy(String source, String destination)
Copy resource. Dead properties should be copied to the destination path.

Parameters:
  `source` - the copy source path
  `destination` - the copy destination path

### delete

void delete(String resource)
Delete specified resource. Dead properties on a deleted resource should be deleted.

Parameters:
  `resource` - the path of the resource to delete

### propfind

boolean propfind(String resource, Node property, boolean nameOnly, XMLWriter generatedXML)
Generate propfind XML fragments for dead properties.

Parameters:
  `resource` - the resource path
  `property` - the dead property, if null then all dead properties must be written
  `nameOnly` - true if only the property name element should be generated
  `generatedXML` - the current generated XML for the PROPFIND response
Returns:
  true if a property was specified and a corresponding dead property was found on the resource, false otherwise

### proppatch

void proppatch(String resource, ArrayList<WebdavServlet.ProppatchOperation> operations)
Apply proppatch to the specified resource.

Parameters:
  `resource` - the resource path on which to apply the proppatch
  `operations` - the set and remove to apply, the final status codes of the result should be set on each operation