Sometimes required parameters are not used through routing but still they are mandatory. I wanted to have API with
resource.json?foo=bar&something=else
format, that was possible through QueryParam annotation or requirements in routing BUT!
There was no way to set dataType or description
This PR solves problem for me.
Side note: if you want to declare e.g. _format requirement through Annotation or any other param that is used in url ({foo} format) then it won't work. Because Bundle still overrides requirements and parameters after the constuctor in ApiDoc is called. This might be solved in separate PR by adding check if given requirements or parameters was already defined.
Move logic to extract data in the Extractor
Remove logic in the AbstractFormatter
Use ApiDoc class as data container
Update tests
Add test to prove the bug with FOSRestBundle annotations (\\d+ instead of \d+)