Package org.apache.tomcat.util.descriptor.web

# Class SecurityCollection

java.lang.Object
org.apache.tomcat.util.descriptor.web.XmlEncodingBase
org.apache.tomcat.util.descriptor.web.SecurityCollection

All Implemented Interfaces:
  `Serializable`

public class SecurityCollection extends XmlEncodingBase implements Serializable
Representation of a web resource collection for a web application's security constraint, as represented in a `<web-resource-collection>` element in the deployment descriptor.

WARNING: It is assumed that instances of this class will be created and modified only within the context of a single thread, before the instance is made visible to the remainder of the application. After that, only read access is expected. Therefore, none of the read and write access within this class is synchronized.

Author:
  Craig R. McClanahan
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`SecurityCollection()`
Construct a new security collection instance with default values.
`SecurityCollection(String name, String description)`
Construct a new security collection instance with specified values.

## Method Summary

Modifier and Type
Method
Description
`void`
`addMethod(String method)`
Add an HTTP request method to be explicitly part of this web resource collection.
`void`
`addOmittedMethod(String method)`
Add an HTTP request method to the methods explicitly excluded from this web resource collection.
`void`
`addPattern(String pattern)`
Add a URL pattern to be part of this web resource collection.
`void`
`addPatternDecoded(String pattern)`
`boolean`
`findMethod(String method)`
Check if the collection applies to the specified method.
`String[]`
`findMethods()`
`String[]`
`findOmittedMethods()`
`boolean`
`findPattern(String pattern)`
Is the specified pattern part of this web resource collection?
`String[]`
`findPatterns()`
`String`
`getDescription()`
`String`
`getName()`
`boolean`
`isFromDescriptor()`
`void`
`removeMethod(String method)`
Remove the specified HTTP request method from those that are part of this web resource collection.
`void`
`removeOmittedMethod(String method)`
Remove the specified HTTP request method from those that are explicitly excluded from this web resource collection.
`void`
`removePattern(String pattern)`
Remove the specified URL pattern from those that are part of this web resource collection.
`void`
`setDescription(String description)`
Set the description of this web resource collection.
`void`
`setFromDescriptor(boolean isFromDescriptor)`
Set if this constraint was defined in a deployment descriptor.
`void`
`setName(String name)`
Set the name of this web resource collection
`String`
`toString()`
Return a String representation of this security collection.

### Methods inherited from class org.apache.tomcat.util.descriptor.web.XmlEncodingBase

`getCharset, setCharset`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### SecurityCollection

public SecurityCollection()
Construct a new security collection instance with default values.

### SecurityCollection

public SecurityCollection(String name, String description)
Construct a new security collection instance with specified values.

Parameters:
  `name` - Name of this security collection
  `description` - Description of this security collection

## Method Details

### getDescription

public String getDescription()

Returns:
  the description of this web resource collection.

### setDescription

public void setDescription(String description)
Set the description of this web resource collection.

Parameters:
  `description` - The new description

### getName

public String getName()

Returns:
  the name of this web resource collection.

### setName

public void setName(String name)
Set the name of this web resource collection

Parameters:
  `name` - The new name

### isFromDescriptor

public boolean isFromDescriptor()

Returns:
  if this constraint was defined in a deployment descriptor.

### setFromDescriptor

public void setFromDescriptor(boolean isFromDescriptor)
Set if this constraint was defined in a deployment descriptor.

Parameters:
  `isFromDescriptor` - `true` was declared in a descriptor

### addMethod

public void addMethod(String method)
Add an HTTP request method to be explicitly part of this web resource collection.

Parameters:
  `method` - The method

### addOmittedMethod

public void addOmittedMethod(String method)
Add an HTTP request method to the methods explicitly excluded from this web resource collection.

Parameters:
  `method` - The method

### addPattern

public void addPattern(String pattern)
Add a URL pattern to be part of this web resource collection.

Parameters:
  `pattern` - The pattern

### addPatternDecoded

public void addPatternDecoded(String pattern)

### findMethod

public boolean findMethod(String method)
Check if the collection applies to the specified method.

Parameters:
  `method` - Request method to check
Returns:
  `true` if the specified HTTP request method is part of this web resource collection.

### findMethods

public String[] findMethods()

Returns:
  the set of HTTP request methods that are part of this web resource collection, or a zero-length array if no methods have been explicitly included.

### findOmittedMethods

public String[] findOmittedMethods()

Returns:
  the set of HTTP request methods that are explicitly excluded from this web resource collection, or a zero-length array if no request methods are excluded.

### findPattern

public boolean findPattern(String pattern)
Is the specified pattern part of this web resource collection?

Parameters:
  `pattern` - Pattern to be compared
Returns:
  `true` if the pattern is part of the collection

### findPatterns

public String[] findPatterns()

Returns:
  the set of URL patterns that are part of this web resource collection. If none have been specified, a zero-length array is returned.

### removeMethod

public void removeMethod(String method)
Remove the specified HTTP request method from those that are part of this web resource collection.

Parameters:
  `method` - Request method to be removed

### removeOmittedMethod

public void removeOmittedMethod(String method)
Remove the specified HTTP request method from those that are explicitly excluded from this web resource collection.

Parameters:
  `method` - Request method to be removed

### removePattern

public void removePattern(String pattern)
Remove the specified URL pattern from those that are part of this web resource collection.

Parameters:
  `pattern` - Pattern to be removed

### toString

public String toString()
Return a String representation of this security collection.

Overrides:
  `toString` in class `Object`