22#include "rpc/common/APIVersion.hpp"
23#include "rpc/common/Types.hpp"
24#include "rpc/common/impl/APIVersionParser.hpp"
25#include "util/newconfig/ConfigDefinition.hpp"
27#include <boost/json/conversion.hpp>
28#include <boost/json/value.hpp>
58 config.get<uint32_t>(
"api_version.default"),
59 config.get<uint32_t>(
"api_version.min"),
60 config.get<uint32_t>(
"api_version.max")
79 output.currVersion = apiVersionParser_.getDefaultVersion();
80 output.minVersion = apiVersionParser_.getMinVersion();
81 output.maxVersion = apiVersionParser_.getMaxVersion();
87 tag_invoke(boost::json::value_from_tag, boost::json::value& jv, Output
const& output)
92 {
"first", output.minVersion},
93 {
"last", output.maxVersion},
94 {
"good", output.currVersion},
The version command returns the min,max and current api Version we are using.
Definition VersionHandler.hpp:38
Result process(Context const &ctx) const
Process the version command.
Definition VersionHandler.hpp:74
VersionHandler(util::config::ClioConfigDefinition const &config)
Construct a new Version Handler object.
Definition VersionHandler.hpp:56
Definition APIVersionParser.hpp:34
All the config data will be stored and extracted from this class.
Definition ConfigDefinition.hpp:54
This namespace contains all the RPC logic and handlers.
Definition AMMHelpers.cpp:36
std::expected< OutputType, Status > HandlerReturnType
Return type for each individual handler.
Definition Types.hpp:81
Context of an RPC call.
Definition Types.hpp:118
Result type used to return responses or error statuses to the Webserver subsystem.
Definition Types.hpp:129
A struct to hold the output data of the command.
Definition VersionHandler.hpp:45