26#ifndef MYSQLROUTER_PLUGIN_INFO_PLUGIN_INCLUDED
27#define MYSQLROUTER_PLUGIN_INFO_PLUGIN_INCLUDED
34#include "mysql/harness/plugin.h"
87 friend std::ostream &
operator<<(std::ostream &stream,
103 static void copy_to_list(std::list<std::string> &out_list,
104 const char **in_list,
size_t in_list_size);
Version independent plugin data storage, defines conversion from existing versions and enables writin...
Definition: plugin.h:75
std::string arch_descriptor
Definition: plugin.h:110
Plugin_info(const Plugin_v1 &plugin)
Constructor.
Definition: plugin.cc:38
friend std::ostream & operator<<(std::ostream &stream, const Plugin_info &plugin_info)
prints the JSON representation of the Plugin_info object to the selected output stream
Definition: plugin.cc:98
uint32_t abi_version
Definition: plugin.h:108
std::list< std::string > requires_plugins
Definition: plugin.h:114
std::list< std::string > conflicts
Definition: plugin.h:115
void print_as_json(std::ostream &out_stream) const
Definition: plugin.cc:64
static std::string get_abi_version_str(uint32_t ver)
converts ABI version integer to string representation
Definition: plugin.cc:48
static void copy_to_list(std::list< std::string > &out_list, const char **in_list, size_t in_list_size)
Definition: plugin.cc:59
std::string brief
Definition: plugin.h:111
uint32_t plugin_version
Definition: plugin.h:112
static std::string get_plugin_version_str(uint32_t ver)
converts plugin version integer to string representation
Definition: plugin.cc:53
static MYSQL_PLUGIN plugin_info
Definition: rewriter_plugin.cc:89
The assumed and expected beginning of each version of Plugin struct.
Definition: plugin.h:41
uint32_t abi_version
Definition: plugin.h:42
Data fields of the first version of the Plugin struct.
Definition: plugin.h:52
const char * arch_descriptor
Definition: plugin.h:55
const char ** conflicts
Definition: plugin.h:63
size_t requires_length
Definition: plugin.h:59
const char * brief
Definition: plugin.h:56
uint32_t plugin_version
Definition: plugin.h:57
size_t conflicts_length
Definition: plugin.h:62
uint32_t abi_version
Definition: plugin.h:53
const char ** requires_plugins
Definition: plugin.h:60