Package jakarta.servlet

## Class ServletSecurityElement

- java.lang.Object
- - jakarta.servlet.HttpConstraintElement
  - - jakarta.servlet.ServletSecurityElement

    public class ServletSecurityElement
    extends HttpConstraintElement

The programmatic equivalent of `ServletSecurity` used to configre security constraints for a Servlet.

Since:
  Servlet 3.0

### Constructor Summary

Constructors
`ServletSecurityElement()` Use default HttpConstraint.
`ServletSecurityElement​(ServletSecurity annotation)` Create from an annotation.
`ServletSecurityElement​(HttpConstraintElement httpConstraintElement)` Use specified HttpConstraintElement.
`ServletSecurityElement​(HttpConstraintElement httpConstraintElement, java.util.Collection<HttpMethodConstraintElement> httpMethodConstraints)` Use specified HttpConstraintElement as default and specific constraints for specified methods.
`ServletSecurityElement​(java.util.Collection<HttpMethodConstraintElement> httpMethodConstraints)` Use specific constraints for specified methods and default HttpConstraintElement for all other methods.

### Method Summary

All Methods Instance Methods Concrete Methods
`java.util.Collection<HttpMethodConstraintElement>` `getHttpMethodConstraints()` Obtain the collection of security constraints configured for specific methods.
`java.util.Collection<java.lang.String>` `getMethodNames()` Obtain the collection HTTP methods for which security constraints have been defined.

### Methods inherited from class jakarta.servlet.HttpConstraintElement

`getEmptyRoleSemantic, getRolesAllowed, getTransportGuarantee`

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

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

### Constructor Detail

#### ServletSecurityElement

    public ServletSecurityElement()

Use default HttpConstraint.

#### ServletSecurityElement

    public ServletSecurityElement​(HttpConstraintElement httpConstraintElement)

Use specified HttpConstraintElement.

Parameters:
  `httpConstraintElement` - The constraint

#### ServletSecurityElement

    public ServletSecurityElement​(java.util.Collection<HttpMethodConstraintElement> httpMethodConstraints)

Use specific constraints for specified methods and default HttpConstraintElement for all other methods.

Parameters:
  `httpMethodConstraints` - Method constraints
Throws:
  `java.lang.IllegalArgumentException` - if a method name is specified more than once

#### ServletSecurityElement

    public ServletSecurityElement​(HttpConstraintElement httpConstraintElement,
                                  java.util.Collection<HttpMethodConstraintElement> httpMethodConstraints)

Use specified HttpConstraintElement as default and specific constraints for specified methods.

Parameters:
  `httpConstraintElement` - Default constraint
  `httpMethodConstraints` - Method constraints
Throws:
  `java.lang.IllegalArgumentException` - if a method name is specified more than once

#### ServletSecurityElement

    public ServletSecurityElement​(ServletSecurity annotation)

Create from an annotation.

Parameters:
  `annotation` - Annotation to use as the basis for the new instance
Throws:
  `java.lang.IllegalArgumentException` - if a method name is specified more than once

### Method Detail

#### getHttpMethodConstraints

    public java.util.Collection<HttpMethodConstraintElement> getHttpMethodConstraints()

Obtain the collection of security constraints configured for specific methods.

Returns:
  The security constraints for specific methods

#### getMethodNames

    public java.util.Collection<java.lang.String> getMethodNames()

Obtain the collection HTTP methods for which security constraints have been defined.

Returns:
  The names of the HTTP methods