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

    All Methods Instance Methods Concrete Methods
    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 Detail

    - #### 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 Detail

    - #### 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`