22#include "rpc/common/APIVersion.hpp"
23#include "util/log/Logger.hpp"
24#include "util/newconfig/ObjectView.hpp"
26#include <boost/json/object.hpp>
37 uint32_t defaultVersion_;
50 std::expected<uint32_t, std::string>
51 parse(boost::json::object
const& request)
const override;
54 getDefaultVersion()
const
56 return defaultVersion_;
A baseclass for API version helper.
Definition APIVersion.hpp:48
Definition APIVersionParser.hpp:34
std::expected< uint32_t, std::string > parse(boost::json::object const &request) const override
Extracts API version information from a JSON object.
Definition APIVersionParser.cpp:57
A simple thread-safe logger for the channel specified in the constructor.
Definition Logger.hpp:110
Provides a view into a subset of configuration data defined by a prefix.
Definition ObjectView.hpp:40
static constexpr uint32_t kAPI_VERSION_MIN
Minimum API version supported by this build.
Definition APIVersion.hpp:38
static constexpr uint32_t kAPI_VERSION_MAX
Maximum API version supported by this build.
Definition APIVersion.hpp:43
static constexpr uint32_t kAPI_VERSION_DEFAULT
Default API version to use if no version is specified by clients.
Definition APIVersion.hpp:33