MySQL 9.3.0
Source Code Documentation
openapi_object_creator.cc File Reference
#include "mrs/rest/openapi_object_creator.h"
#include <charconv>
#include <chrono>
#include <iomanip>
#include <sstream>
#include "helper/string/contains.h"
#include "mrs/database/converters/column_datatype_converter.h"
#include "mysql/harness/string_utils.h"

Classes

class  mrs::rest::OpenApiCreator
 Helper class that facilitates generating OpenAPI swagger for the given DBobject entry. More...
 

Namespaces

namespace  mrs
 
namespace  mrs::rest
 
namespace  mrs::rest::anonymous_namespace{openapi_object_creator.cc}
 

Functions

std::string mrs::rest::anonymous_namespace{openapi_object_creator.cc}::get_timestamp ()
 
rapidjson::Value mrs::rest::get_header_info (std::shared_ptr< DbService > service, rapidjson::Document::AllocatorType &allocator)
 Create OpenAPI title, version and description. More...
 
rapidjson::Value mrs::rest::get_security_scheme (rapidjson::Document::AllocatorType &allocator)
 Create security scheme for OpenAPI. More...
 
static std::optional< int > mrs::rest::get_type_size (std::string_view datatype)
 
rapidjson::Value mrs::rest::get_route_openapi_component (DbObjectPtr entry, rapidjson::Document::AllocatorType &allocator)
 Create OpenAPI components section containing security schemes and schemas (type information with constraints) for each db object passed as a parameter. More...
 
void mrs::rest::get_procedure_metadata_component (rapidjson::Value &schema_properties, rapidjson::Document::AllocatorType &allocator)
 Create "_metadata" schema component item from a procedure call. More...
 
static rapidjson::Value mrs::rest::get_http_500_schema (rapidjson::Document::AllocatorType &allocator)
 
rapidjson::Value mrs::rest::get_route_openapi_schema_path (const std::optional< uint32_t > privileges, DbObjectPtr entry, const std::string &url, rapidjson::Document::AllocatorType &allocator)
 Create OpenAPI 'paths' section. More...
 
bool mrs::rest::is_supported (const std::shared_ptr< mrs::database::entry::DbObject > &db_obj, const std::shared_ptr< mrs::database::entry::DbSchema > &db_schema)
 Check if the given DB Object entry can be used for getting an OpenAPI description. More...