io.undertow.predicate

## Interface PredicateBuilder

All Known Implementing Classes:
  AuthenticationRequiredPredicate.Builder, ContainsPredicate.Builder, EqualsPredicate.Builder, ExistsPredicate.Builder, IdempotentPredicate.Builder, MaxContentSizePredicate.Builder, MethodPredicate.Builder, MinContentSizePredicate.Builder, PathMatchPredicate.Builder, PathPrefixPredicate.Builder, PathSuffixPredicate.Builder, PathTemplatePredicate.Builder, RegularExpressionPredicate.Builder, RequestLargerThanPredicate.Builder, RequestSmallerThanPredicate.Builder, SecurePredicate.Builder

    public interface PredicateBuilder

An interface that knows how to build a predicate from a textual representation. This is loaded using a service loader to make it configurable.

This makes it easy to configure conditions based on a string representation

Author:
  Stuart Douglas

### Method Summary

All Methods Instance Methods Abstract Methods
`Predicate` `build(Map<String,Object> config)` Creates a predicate
`String` `defaultParameter()`
`String` `name()` The string representation of the predicate name.
`Map<String,Class<?>>` `parameters()` Returns a map of parameters and their types.
`Set<String>` `requiredParameters()`

### Method Detail

#### name

    String name()

The string representation of the predicate name.

Returns:
  The predicate name

#### parameters

    Map<String,Class<?>> parameters()

Returns a map of parameters and their types.

#### requiredParameters

    Set<String> requiredParameters()

Returns:
  The required parameters

#### defaultParameter

    String defaultParameter()

Returns:
  The default parameter name, or null if it does not have a default parameter

#### build

    Predicate build(Map<String,Object> config)

Creates a predicate

Parameters:
  `config` - The predicate config
Returns:
  The new predicate