MySQL 9.3.0
Source Code Documentation
mrs::endpoint::DbSchemaEndpoint Class Reference

#include <db_schema_endpoint.h>

Inheritance diagram for mrs::endpoint::DbSchemaEndpoint:
[legend]

Public Types

using Parent = OptionEndpoint
 
using DbSchema = mrs::database::entry::DbSchema
 
using DbSchemaPtr = std::shared_ptr< DbSchema >
 
using HandlerFactoryPtr = std::shared_ptr< mrs::interface::HandlerFactory >
 
using DataType = DbSchema
 
- Public Types inherited from mrs::endpoint::OptionEndpoint
using HandlerFactoryPtr = std::shared_ptr< mrs::interface::HandlerFactory >
 
using Handler = mrs::interface::RestHandler
 
using HandlerPtr = std::shared_ptr< Handler >
 
- Public Types inherited from mrs::interface::EndpointBase
using EnabledType = mrs::database::entry::EnabledType
 
using EndpointBasePtr = std::shared_ptr< EndpointBase >
 
using UniversalId = mrs::database::entry::UniversalId
 
using Children = std::vector< EndpointBasePtr >
 
using EndpointConfiguration = mrs::interface::EndpointConfiguration
 
using EndpointConfigurationPtr = std::shared_ptr< EndpointConfiguration >
 
using Handler = mrs::interface::RestHandler
 
using HandlerPtr = std::shared_ptr< Handler >
 
using Uri = ::http::base::Uri
 
using OptionalIndexNames = std::optional< std::vector< std::string > >
 

Public Member Functions

 DbSchemaEndpoint (const DbSchema &entry, EndpointConfigurationPtr configuration, HandlerFactoryPtr factory)
 
void activate_public () override
 
void deactivate () override
 
UniversalId get_id () const override
 
UniversalId get_parent_id () const override
 
std::optional< std::string > get_options () const override
 
void set (const DbSchema &schema, EndpointBasePtr parent)
 
const DbSchemaPtr get () const
 
- Public Member Functions inherited from mrs::endpoint::OptionEndpoint
 OptionEndpoint (UniversalId service_id, EndpointConfigurationPtr configuration, HandlerFactoryPtr factory)
 
OptionalIndexNames get_index_files () override
 
- Public Member Functions inherited from mrs::interface::EndpointBase
 EndpointBase (EndpointConfigurationPtr configuration)
 
virtual ~EndpointBase ()=default
 
virtual bool required_authentication () const
 
virtual std::string get_url_path () const
 
virtual Uri get_url () const
 
virtual void activate_private ()
 
virtual EnabledType get_enabled_level () const
 
void set_parent (EndpointBasePtr parent)
 
void change_parent (EndpointBasePtr parent_new)
 
EndpointConfigurationPtr get_configuration () const
 
const EndpointBasePtr get_parent_ptr () const
 
EndpointBasePtr get_parent_ptr ()
 
void add_child_endpoint (EndpointBasePtr child_ptr)
 
void remove_child_endpoint (const UniversalId &child_id)
 
Children get_children ()
 

Private Member Functions

void update () override
 
EnabledType get_this_node_enabled_level () const override
 
bool does_this_node_require_authentication () const override
 
std::string get_my_url_path_part () const override
 
std::string get_my_url_part () const override
 

Private Attributes

DbSchemaPtr entry_
 
std::vector< HandlerPtrurl_handlers_
 

Additional Inherited Members

- Protected Member Functions inherited from mrs::endpoint::OptionEndpoint
void update () override
 
- Protected Member Functions inherited from mrs::interface::EndpointBase
void log_update ()
 
virtual std::string get_extra_update_data ()
 
EndpointBasePtr get_child_by_id (const UniversalId &id) const
 
void changed ()
 
- Static Protected Member Functions inherited from mrs::interface::EndpointBase
static const char * get_state_name (EnabledType et)
 
- Protected Attributes inherited from mrs::endpoint::OptionEndpoint
UniversalId service_id_
 
std::vector< HandlerPtrhandlers_
 
HandlerFactoryPtr factory_
 
std::optional< std::vector< std::string > > directory_indexes_
 
- Protected Attributes inherited from mrs::interface::EndpointBase
std::optional< EnabledTypelast_state_
 
std::shared_mutex endpoints_access_
 
std::map< UniversalId, EndpointBasePtrendpoints_
 
std::weak_ptr< EndpointBaseparent_
 
EndpointConfigurationPtr configuration_
 

Member Typedef Documentation

◆ DataType

◆ DbSchema

◆ DbSchemaPtr

◆ HandlerFactoryPtr

◆ Parent

Constructor & Destructor Documentation

◆ DbSchemaEndpoint()

mrs::endpoint::DbSchemaEndpoint::DbSchemaEndpoint ( const DbSchema entry,
EndpointConfigurationPtr  configuration,
HandlerFactoryPtr  factory 
)

Member Function Documentation

◆ activate_public()

void mrs::endpoint::DbSchemaEndpoint::activate_public ( )
overridevirtual

Reimplemented from mrs::interface::EndpointBase.

◆ deactivate()

void mrs::endpoint::DbSchemaEndpoint::deactivate ( )
overridevirtual

Reimplemented from mrs::interface::EndpointBase.

◆ does_this_node_require_authentication()

bool mrs::endpoint::DbSchemaEndpoint::does_this_node_require_authentication ( ) const
overrideprivatevirtual

◆ get()

const DbSchemaPtr mrs::endpoint::DbSchemaEndpoint::get ( ) const

◆ get_id()

UniversalId mrs::endpoint::DbSchemaEndpoint::get_id ( ) const
overridevirtual

◆ get_my_url_part()

std::string mrs::endpoint::DbSchemaEndpoint::get_my_url_part ( ) const
overrideprivatevirtual

◆ get_my_url_path_part()

std::string mrs::endpoint::DbSchemaEndpoint::get_my_url_path_part ( ) const
overrideprivatevirtual

◆ get_options()

std::optional< std::string > mrs::endpoint::DbSchemaEndpoint::get_options ( ) const
overridevirtual

◆ get_parent_id()

UniversalId mrs::endpoint::DbSchemaEndpoint::get_parent_id ( ) const
overridevirtual

◆ get_this_node_enabled_level()

EnabledType mrs::endpoint::DbSchemaEndpoint::get_this_node_enabled_level ( ) const
overrideprivatevirtual

◆ set()

void mrs::endpoint::DbSchemaEndpoint::set ( const DbSchema schema,
EndpointBasePtr  parent 
)

◆ update()

void mrs::endpoint::DbSchemaEndpoint::update ( )
overrideprivatevirtual

Reimplemented from mrs::interface::EndpointBase.

Member Data Documentation

◆ entry_

DbSchemaPtr mrs::endpoint::DbSchemaEndpoint::entry_
private

◆ url_handlers_

std::vector<HandlerPtr> mrs::endpoint::DbSchemaEndpoint::url_handlers_
private

The documentation for this class was generated from the following files: