* [cpp][pistache-server] Add extraction and forwarding of credentials for HTTP Basic protected endpoints.
* [cpp][pistache-server] Change HTTP Basic credentials to be contained on a struct instead of two std::strings
* [cpp][pistache-server] Add callbacks to authenticate http basic credentials.
* [cpp][pistache-server] Add `void* userdata` to HttpBasicCredentials.
This allows for data ft be passed on from the authenticator to the
handler implementation. For example a userid that has already been
looked up
* [cpp][pistache-server] Add support for HTTP Bearer authentication.
* [cpp][pistache-server] Add new file `api-base-source.mustache`
`api-base-source.mustache` contain implementations of security
related methods and also the empty constructor.
* [cpp][pistache-server] Add re-generated samples.
* Fix PR 19978: Updated indentation levels and fixed test problems
---------
Co-authored-by: Morten Winkler <morten@winkler.dk>
* [BUG] [C++][Pistache] cpp-pistache-server generating API include undefined "Object.h" (#2769)
Should handle Object.h, AnyType.h correctly. Set.h also tested.
- #include Object.h removed and replaced by a typeMapping.put(object, nlohmann::json) like suggested in other issues
- object had an invalid syntax: ':' instead of '::' in types with namespace
- extra include of #include nlohmann/json.h removed when there's already #include <nlohmann/json.hpp>
- nlohmann::json is excluded from model namespace
Tested with custom petstore played, with suggested openapi specs coming from issues #2769, #10266, #14234
```bash
rm -rf samples/server/petstore/cpp-pistache-everything/ && ./bin/generate-samples.sh ./bin/configs/cpp-pistache-server-cpp-pistache-everything.yaml && cd samples/server/petstore/cpp-pistache-everything/ && mkdir build && cd build && cmake .. && cmake --build . --parallel
```
* - Adding to samples/server/petstore cpp-pistache-everything
* - .md and FILES missing