Class RequestValidator

java.lang.Object
io.vertx.mutiny.openapi.validation.RequestValidator
All Implemented Interfaces:
MutinyDelegate

public class RequestValidator extends Object implements MutinyDelegate
The RequestValidator requires the parameters in a specific format to be able to parse and validate them. This is especially true for exploded parameters. The following table shows how the value of a parameter of a request must be stored in a ValidatableRequest object. For these examples the key of those values is always color.

These are the initial values for each type:
  • primitive (string) -> "blue"
  • array -> ["blue","black","brown"]
  • object -> { "R": 100, "G": 200, "B": 150 }
For cookie parameters ValidatedRequest.getCookies()
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 | style  | explode | empty | primitive | array                              | object                  |
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 | form   | false   |       | blue      | blue,black,brown                   | R,100,G,200,B,150       |
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 | form   | true    |       | blue      | color=blue&color=black&color=brown | R=100&G=200&B=150       |
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 
For header parameters ValidatedRequest.getHeaders()
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 | style  | explode | empty | primitive | array                              | object                  |
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 | simple | false   |       | blue      | blue,black,brown                   | R,100,G,200,B,150       |
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 | simple | true    |       | blue      | blue,black,brown                   | R=100,G=200,B=150       |
 +--------+---------+-------+-----------+------------------------------------+-------------------------+
 
For path parameters ValidatedRequest.getPathParameters()
 +--------+---------+--------+-------------+-------------------------------------+--------------------------+
 | style  | explode | empty  | primitive   | array                               | object                   |
 +--------+---------+--------+-------------+-------------------------------------+--------------------------+
 | simple | false   |        | blue        | blue,black,brown                    | R,100,G,200,B,150        |
 +--------+---------+--------+-------------+-------------------------------------+--------------------------+
 | simple | true    |        | blue        | blue,black,brown                    | R=100,G=200,B=150        |
 +--------+---------+--------+------ ------+-------------------------------------+--------------------------+
 | label  | false   | .      | .blue       | .blue,black,brown                   | .R,100,G,200,B,150       |
 +--------+---------+--------+-------------+-------------------------------------+--------------------------+
 | label  | true    | .      | .blue       | .blue.black.brown                   | .R=100.G=200.B=150       |
 +--------+---------+--------+-------------+-------------------------------------+--------------------------+
 | matrix | false   | ;color | ;color=blue | ;color=blue,black,brown             | ;color=R,100,G,200,B,150 |
 +--------+---------+-------+--------+-------------------------------------------+--------------------------+
 | matrix | true    | ;color | ;color=blue | ;color=blue;color=black;color=brown | ;R=100;G=200;B=150       |
 +--------+---------+--------+-------------+-------------------------------------+--------------------------+
 
For query parameters ValidatedRequest.getQuery()
 +----------------+---------+-------+------------+-----------------------------------+--------------------------+
 | style          | explode | empty | primitive | array                              | object                   |
 +----------------+---------+-------+----------+-------------------------------------+--------------------------+
 | form           | false   |       | blue      | blue,black,brown                   | R,100,G,200,B,150        |
 +----------------+---------+-------+-----------+------------------------------------+--------------------------+
 | form           | true    |       | blue      | color=blue&color=black&color=brown | R=100&G=200&B=150        |
 +----------------+---------+-------+------ ----+------------------------------------+--------------------------+
 | spaceDelimited | false   | not yet supported                                                                 /
 +----------------+---------+-------+------ ----+------------------------------------+--------------------------+
 | spaceDelimited | true    | not yet supported                                                                 /
 +----------------+---------+-------+------ ----+------------------------------------+--------------------------+
 | pipeDelimited  | false   | not yet supported                                                                 /
 +----------------+---------+-------+------ ----+------------------------------------+--------------------------+
 | pipeDelimited  | true    | not yet supported                                                                 /
 +----------------+---------+-------+------ ----+------------------------------------+--------------------------+
 | spaceDelimited | true    | not yet supported                                                                 /
 +----------------+---------+-------+------ ----+------------------------------------+--------------------------+
 

NOTE: This class has been automatically generated from the original non Mutiny-ified interface using Vert.x codegen.