Package org.springframework.security.access.prepost

# Annotation Interface PreFilter

@Target({METHOD,TYPE}) @Retention(RUNTIME) @Inherited @Documented public @interface PreFilter
Annotation for specifying a method filtering expression which will be evaluated before a method has been invoked. The name of the argument to be filtered is specified using the `filterTarget` attribute. This must be a Java Collection implementation which supports the `remove` method. Pre-filtering isn't supported on array types and will fail if the value of named filter target argument is null at runtime.

For methods which have a single argument which is a collection type, this argument will be used as the filter target.

The annotation value contains the expression which will be evaluated for each element in the collection. If the expression evaluates to false, the element will be removed. The reserved name "filterObject" can be used within the expression to refer to the current object which is being evaluated.

Since:
  3.0

## Required Element Summary

Required Elements
Modifier and Type
Required Element
Description
`String`
`value`

## Optional Element Summary

Optional Elements
Modifier and Type
Optional Element
Description
`String`
`filterTarget`

## Element Details

### value

String value

Returns:
  the Spring-EL expression to be evaluated before invoking the protected method

### filterTarget

String filterTarget

Returns:
  the name of the parameter which should be filtered (must be a non-null collection instance) If the method contains a single collection argument, then this attribute can be omitted.

Default:
  ""