# Interface WebResourceLockSet

All Known Implementing Classes:
  `DirResourceSet`

public interface WebResourceLockSet
Interface implemented by `WebResourceSet` implementations that wish to provide locking functionality.

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static class`
`WebResourceLockSet.ResourceLock`
Deprecated.
Unused.

## Method Summary

Modifier and Type
Method
Description
`ReadWriteLock`
`getLock(String path)`
Obtain a reentrant read/write lock for the resource at the provided path.
`WebResourceLockSet.ResourceLock`
`lockForRead(String path)`
Deprecated.
Unused.
`WebResourceLockSet.ResourceLock`
`lockForWrite(String path)`
Deprecated.
Unused.
`void`
`unlockForRead(WebResourceLockSet.ResourceLock resourceLock)`
Deprecated.
Unused.
`void`
`unlockForWrite(WebResourceLockSet.ResourceLock resourceLock)`
Deprecated.
Unused.

## Method Details

### getLock

ReadWriteLock getLock(String path)
Obtain a reentrant read/write lock for the resource at the provided path. The resource is not required to exist. Multiple calls to this method with the same path will return the same lock provided that at least one instance of the lock remains in use between the calls.

Parameters:
  `path` - The path for which the lock should be obtained
Returns:
  A reentrant read/write lock for the given resource.

### lockForRead

@Deprecated WebResourceLockSet.ResourceLock lockForRead(String path)
Deprecated.
Unused. Will be removed in Tomcat 12 onwards. Use `#getLock(String)` instead.
Lock the resource at the provided path for reading. The resource is not required to exist. Read locks are not exclusive.

Parameters:
  `path` - The path to the resource to be locked for reading
Returns:
  The `WebResourceLockSet.ResourceLock` that must be passed to `unlockForRead(ResourceLock)` to release the lock

### unlockForRead

@Deprecated void unlockForRead(WebResourceLockSet.ResourceLock resourceLock)
Deprecated.
Unused. Will be removed in Tomcat 12 onwards. Use `#getLock(String)` instead.
Release a read lock from the resource associated with the given `WebResourceLockSet.ResourceLock`.

Parameters:
  `resourceLock` - The `WebResourceLockSet.ResourceLock` associated with the resource for which a read lock should be released

### lockForWrite

@Deprecated WebResourceLockSet.ResourceLock lockForWrite(String path)
Deprecated.
Unused. Will be removed in Tomcat 12 onwards. Use `#getLock(String)` instead.
Lock the resource at the provided path for writing. The resource is not required to exist. Write locks are exclusive.

Parameters:
  `path` - The path to the resource to be locked for writing
Returns:
  The `WebResourceLockSet.ResourceLock` that must be passed to `unlockForWrite(ResourceLock)` to release the lock

### unlockForWrite

@Deprecated void unlockForWrite(WebResourceLockSet.ResourceLock resourceLock)
Deprecated.
Unused. Will be removed in Tomcat 12 onwards. Use `#getLock(String)` instead.
Release the write lock from the resource associated with the given `WebResourceLockSet.ResourceLock`.

Parameters:
  `resourceLock` - The `WebResourceLockSet.ResourceLock` associated with the resource for which the write lock should be released