MySQL 9.3.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
mrs::endpoint::ContentFileEndpoint Class Reference

#include <content_file_endpoint.h>

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

Public Types

using Parent = mrs::interface::EndpointBase
 
using PersistentDataContentFile = handler::PersistentDataContentFile
 
using PersistentDataContentFilePtr = std::shared_ptr< PersistentDataContentFile >
 
using ContentFile = mrs::database::entry::ContentFile
 
using ContentFilePtr = std::shared_ptr< ContentFile >
 
using HandlerFactoryPtr = std::shared_ptr<::mrs::interface::HandlerFactory >
 
using DataType = ContentFile
 
- 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

 ContentFileEndpoint (const ContentFile &entry, EndpointConfigurationPtr configuration, HandlerFactoryPtr factory)
 
OptionalIndexNames get_index_files () override
 
UniversalId get_id () const override
 
UniversalId get_parent_id () const override
 
std::optional< std::string > get_options () const override
 
bool is_index () const
 
const ContentFilePtr get () const
 
void set (const ContentFile &entry, EndpointBasePtr parent)
 
const HandlerPtrget_handler () const
 
const PersistentDataContentFilePtrget_persistent_data () const
 
- 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 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 ()
 

Protected Member Functions

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 ()
 

Private Member Functions

void activate_public () override
 
void activate_private () override
 
void deactivate () override
 
void activate_common ()
 
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

bool is_index_ {false}
 
ContentFilePtr entry_
 
PersistentDataContentFilePtr persistent_data_
 
HandlerFactoryPtr factory_
 
HandlerPtr handler_
 
HandlerPtr handler_redirection_
 

Additional Inherited Members

- Static Protected Member Functions inherited from mrs::interface::EndpointBase
static const char * get_state_name (EnabledType et)
 
- 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

◆ ContentFile

◆ ContentFilePtr

◆ DataType

◆ HandlerFactoryPtr

◆ Parent

◆ PersistentDataContentFile

◆ PersistentDataContentFilePtr

Constructor & Destructor Documentation

◆ ContentFileEndpoint()

mrs::endpoint::ContentFileEndpoint::ContentFileEndpoint ( const ContentFile entry,
EndpointConfigurationPtr  configuration,
HandlerFactoryPtr  factory 
)

Member Function Documentation

◆ activate_common()

void mrs::endpoint::ContentFileEndpoint::activate_common ( )
private

◆ activate_private()

void mrs::endpoint::ContentFileEndpoint::activate_private ( )
overrideprivatevirtual

Reimplemented from mrs::interface::EndpointBase.

◆ activate_public()

void mrs::endpoint::ContentFileEndpoint::activate_public ( )
overrideprivatevirtual

Reimplemented from mrs::interface::EndpointBase.

◆ deactivate()

void mrs::endpoint::ContentFileEndpoint::deactivate ( )
overrideprivatevirtual

Reimplemented from mrs::interface::EndpointBase.

◆ does_this_node_require_authentication()

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

◆ get()

const ContentFilePtr mrs::endpoint::ContentFileEndpoint::get ( ) const

◆ get_handler()

const HandlerPtr & mrs::endpoint::ContentFileEndpoint::get_handler ( ) const
inline

◆ get_id()

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

◆ get_index_files()

OptionalIndexNames mrs::endpoint::ContentFileEndpoint::get_index_files ( )
inlineoverridevirtual

◆ get_my_url_part()

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

◆ get_my_url_path_part()

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

◆ get_options()

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

◆ get_parent_id()

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

◆ get_persistent_data()

const PersistentDataContentFilePtr & mrs::endpoint::ContentFileEndpoint::get_persistent_data ( ) const
inline

◆ get_this_node_enabled_level()

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

◆ is_index()

bool mrs::endpoint::ContentFileEndpoint::is_index ( ) const

◆ set()

void mrs::endpoint::ContentFileEndpoint::set ( const ContentFile entry,
EndpointBasePtr  parent 
)

◆ update()

void mrs::endpoint::ContentFileEndpoint::update ( )
overrideprotectedvirtual

Reimplemented from mrs::interface::EndpointBase.

Member Data Documentation

◆ entry_

ContentFilePtr mrs::endpoint::ContentFileEndpoint::entry_
private

◆ factory_

HandlerFactoryPtr mrs::endpoint::ContentFileEndpoint::factory_
private

◆ handler_

HandlerPtr mrs::endpoint::ContentFileEndpoint::handler_
private

◆ handler_redirection_

HandlerPtr mrs::endpoint::ContentFileEndpoint::handler_redirection_
private

◆ is_index_

bool mrs::endpoint::ContentFileEndpoint::is_index_ {false}
private

◆ persistent_data_

PersistentDataContentFilePtr mrs::endpoint::ContentFileEndpoint::persistent_data_
private

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