NCBI C++ ToolKit
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
CNSTServiceRegistry Class Reference

Search Toolkit Book for CNSTServiceRegistry

#include "nst_service_parameters.hpp"
(Private to src/app/netstorage.)

+ Collaboration diagram for CNSTServiceRegistry:

Public Member Functions

 CNSTServiceRegistry ()
 
size_t Size (void) const
 
CJsonNode ReadConfiguration (const IRegistry &reg)
 
CJsonNode Serialize (void) const
 
EServiceMetadataPresence IsKnown (const string &service) const
 
bool GetTTL (const string &service, TNSTDBValue< CTimeSpan > &ttl) const
 
bool GetProlongOnRead (const string &service, const TNSTDBValue< Int8 > &individual_obj_ttl, TNSTDBValue< CTimeSpan > &prolong_on_read) const
 
bool GetProlongOnWrite (const string &service, const TNSTDBValue< Int8 > &individual_obj_ttl, TNSTDBValue< CTimeSpan > &prolong_on_write) const
 
bool GetProlongOnRelocate (const string &service, const TNSTDBValue< Int8 > &individual_obj_ttl, TNSTDBValue< CTimeSpan > &prolong_on_relocate) const
 
bool GetServiceProperties (const string &service, CNSTServiceProperties &props) const
 
CNSTServiceProperties GetDefaultProperties (void) const
 

Private Types

typedef map< string, CNSTServiceProperties, PNocaseTServiceProperties
 

Private Member Functions

CNSTServiceProperties x_ReadServiceProperties (const IRegistry &reg, const string &section, const CNSTServiceProperties &defaults)
 
CTimeSpan x_ReadProlongProperty (const string &value)
 
double x_ReadProlongInTTLs (string &value) const
 
list< stringx_GetMetadataServices (const IRegistry &reg)
 

Private Attributes

CNSTServiceProperties m_LBSMDTestServiceProperties
 
CNSTServiceProperties m_DefaultProperties
 
TServiceProperties m_Services
 
set< string, PNocasem_ServicesExplicitNoMetadata
 
set< string, PNocasem_ServicesDefaultNoMetadata
 
CMutex m_Lock
 

Detailed Description

Definition at line 164 of file nst_service_parameters.hpp.

Member Typedef Documentation

◆ TServiceProperties

Definition at line 207 of file nst_service_parameters.hpp.

Constructor & Destructor Documentation

◆ CNSTServiceRegistry()

CNSTServiceRegistry::CNSTServiceRegistry ( )

Member Function Documentation

◆ GetDefaultProperties()

CNSTServiceProperties CNSTServiceRegistry::GetDefaultProperties ( void  ) const

Definition at line 537 of file nst_service_parameters.cpp.

References m_DefaultProperties, and m_Lock.

◆ GetProlongOnRead()

bool CNSTServiceRegistry::GetProlongOnRead ( const string service,
const TNSTDBValue< Int8 > &  individual_obj_ttl,
TNSTDBValue< CTimeSpan > &  prolong_on_read 
) const

◆ GetProlongOnRelocate()

bool CNSTServiceRegistry::GetProlongOnRelocate ( const string service,
const TNSTDBValue< Int8 > &  individual_obj_ttl,
TNSTDBValue< CTimeSpan > &  prolong_on_relocate 
) const

◆ GetProlongOnWrite()

bool CNSTServiceRegistry::GetProlongOnWrite ( const string service,
const TNSTDBValue< Int8 > &  individual_obj_ttl,
TNSTDBValue< CTimeSpan > &  prolong_on_write 
) const

◆ GetServiceProperties()

bool CNSTServiceRegistry::GetServiceProperties ( const string service,
CNSTServiceProperties props 
) const

◆ GetTTL()

bool CNSTServiceRegistry::GetTTL ( const string service,
TNSTDBValue< CTimeSpan > &  ttl 
) const

◆ IsKnown()

EServiceMetadataPresence CNSTServiceRegistry::IsKnown ( const string service) const

◆ ReadConfiguration()

CJsonNode CNSTServiceRegistry::ReadConfiguration ( const IRegistry reg)

◆ Serialize()

CJsonNode CNSTServiceRegistry::Serialize ( void  ) const

◆ Size()

size_t CNSTServiceRegistry::Size ( void  ) const

Definition at line 186 of file nst_service_parameters.cpp.

References m_Lock, m_Services, and map_checker< Container >::size().

◆ x_GetMetadataServices()

list< string > CNSTServiceRegistry::x_GetMetadataServices ( const IRegistry reg)
private

◆ x_ReadProlongInTTLs()

double CNSTServiceRegistry::x_ReadProlongInTTLs ( string value) const
private

◆ x_ReadProlongProperty()

CTimeSpan CNSTServiceRegistry::x_ReadProlongProperty ( const string value)
private

Definition at line 619 of file nst_service_parameters.cpp.

References ReadTimeSpan(), val, and rapidjson::value.

Referenced by x_ReadServiceProperties().

◆ x_ReadServiceProperties()

CNSTServiceProperties CNSTServiceRegistry::x_ReadServiceProperties ( const IRegistry reg,
const string section,
const CNSTServiceProperties defaults 
)
private

Member Data Documentation

◆ m_DefaultProperties

CNSTServiceProperties CNSTServiceRegistry::m_DefaultProperties
private

Definition at line 202 of file nst_service_parameters.hpp.

Referenced by GetDefaultProperties(), ReadConfiguration(), and Serialize().

◆ m_LBSMDTestServiceProperties

CNSTServiceProperties CNSTServiceRegistry::m_LBSMDTestServiceProperties
private

◆ m_Lock

CMutex CNSTServiceRegistry::m_Lock
mutableprivate

◆ m_Services

TServiceProperties CNSTServiceRegistry::m_Services
private

◆ m_ServicesDefaultNoMetadata

set<string, PNocase> CNSTServiceRegistry::m_ServicesDefaultNoMetadata
private

Definition at line 213 of file nst_service_parameters.hpp.

Referenced by IsKnown(), and x_GetMetadataServices().

◆ m_ServicesExplicitNoMetadata

set<string, PNocase> CNSTServiceRegistry::m_ServicesExplicitNoMetadata
private

Definition at line 212 of file nst_service_parameters.hpp.

Referenced by IsKnown(), and x_GetMetadataServices().


The documentation for this class was generated from the following files:
Modified on Sun Apr 14 05:27:27 2024 by modify_doxy.py rev. 669887