NCBI C++ ToolKit
|
Search Toolkit Book for CNSTServiceRegistry
#include "nst_service_parameters.hpp"
(Private to src/app/netstorage
.)
Public Member Functions | |
CNSTServiceRegistry () | |
size_t | Size (void) const |
CJsonNode | ReadConfiguration (const IRegistry ®) |
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, PNocase > | TServiceProperties |
Private Member Functions | |
CNSTServiceProperties | x_ReadServiceProperties (const IRegistry ®, const string §ion, const CNSTServiceProperties &defaults) |
CTimeSpan | x_ReadProlongProperty (const string &value) |
double | x_ReadProlongInTTLs (string &value) const |
list< string > | x_GetMetadataServices (const IRegistry ®) |
Definition at line 164 of file nst_service_parameters.hpp.
|
private |
Definition at line 207 of file nst_service_parameters.hpp.
CNSTServiceRegistry::CNSTServiceRegistry | ( | ) |
CNSTServiceProperties CNSTServiceRegistry::GetDefaultProperties | ( | void | ) | const |
Definition at line 537 of file nst_service_parameters.cpp.
References m_DefaultProperties, and m_Lock.
bool CNSTServiceRegistry::GetProlongOnRead | ( | const string & | service, |
const TNSTDBValue< Int8 > & | individual_obj_ttl, | ||
TNSTDBValue< CTimeSpan > & | prolong_on_read | ||
) | const |
Definition at line 438 of file nst_service_parameters.cpp.
References map_checker< Container >::end(), NStr::EqualNocase(), map_checker< Container >::find(), CNSTServiceProperties::GetProlongOnRead(), k_LBSMDNSTTestService, m_LBSMDTestServiceProperties, m_Lock, and m_Services.
Referenced by CNetStorageServer::GetServiceProlongOnRead().
bool CNSTServiceRegistry::GetProlongOnRelocate | ( | const string & | service, |
const TNSTDBValue< Int8 > & | individual_obj_ttl, | ||
TNSTDBValue< CTimeSpan > & | prolong_on_relocate | ||
) | const |
Definition at line 490 of file nst_service_parameters.cpp.
References map_checker< Container >::end(), NStr::EqualNocase(), map_checker< Container >::find(), CNSTServiceProperties::GetProlongOnRelocate(), k_LBSMDNSTTestService, m_LBSMDTestServiceProperties, m_Lock, and m_Services.
bool CNSTServiceRegistry::GetProlongOnWrite | ( | const string & | service, |
const TNSTDBValue< Int8 > & | individual_obj_ttl, | ||
TNSTDBValue< CTimeSpan > & | prolong_on_write | ||
) | const |
Definition at line 464 of file nst_service_parameters.cpp.
References map_checker< Container >::end(), NStr::EqualNocase(), map_checker< Container >::find(), CNSTServiceProperties::GetProlongOnWrite(), k_LBSMDNSTTestService, m_LBSMDTestServiceProperties, m_Lock, and m_Services.
Referenced by CNetStorageServer::GetServiceProlongOnWrite().
bool CNSTServiceRegistry::GetServiceProperties | ( | const string & | service, |
CNSTServiceProperties & | props | ||
) | const |
Definition at line 516 of file nst_service_parameters.cpp.
References map_checker< Container >::end(), NStr::EqualNocase(), map_checker< Container >::find(), k_LBSMDNSTTestService, m_LBSMDTestServiceProperties, m_Lock, and m_Services.
Referenced by CNetStorageServer::GetServiceProperties().
bool CNSTServiceRegistry::GetTTL | ( | const string & | service, |
TNSTDBValue< CTimeSpan > & | ttl | ||
) | const |
Definition at line 416 of file nst_service_parameters.cpp.
References map_checker< Container >::end(), NStr::EqualNocase(), map_checker< Container >::find(), CNSTServiceProperties::GetTTL(), k_LBSMDNSTTestService, m_LBSMDTestServiceProperties, m_Lock, and m_Services.
Referenced by CNetStorageServer::GetServiceTTL().
EServiceMetadataPresence CNSTServiceRegistry::IsKnown | ( | const string & | service | ) | const |
Definition at line 391 of file nst_service_parameters.cpp.
References eMetadataDefaultOff, eMetadataExplicitOff, eMetadataOn, map_checker< Container >::end(), set< Key, Compare >::end(), NStr::EqualNocase(), eUnknownService, map_checker< Container >::find(), set< Key, Compare >::find(), k_LBSMDNSTTestService, m_Lock, m_Services, m_ServicesDefaultNoMetadata, and m_ServicesExplicitNoMetadata.
Referenced by CNetStorageServer::InMetadataServices().
Definition at line 194 of file nst_service_parameters.cpp.
References CJsonNode::AppendString(), map_checker< Container >::begin(), map_checker< Container >::end(), map_checker< Container >::find(), CNSTServiceProperties::GetProlongOnReadAsString(), CNSTServiceProperties::GetProlongOnRelocateAsString(), CNSTServiceProperties::GetProlongOnWriteAsString(), CNSTServiceProperties::GetTTLAsString(), m_DefaultProperties, m_Lock, m_Services, CJsonNode::NewArrayNode(), CJsonNode::NewObjectNode(), CJsonNode::NewStringNode(), CJsonNode::SetByKey(), x_GetMetadataServices(), and x_ReadServiceProperties().
Referenced by CNetStorageServer::ReadMetadataConfiguration().
CJsonNode CNSTServiceRegistry::Serialize | ( | void | ) | const |
Definition at line 368 of file nst_service_parameters.cpp.
References CJsonNode::Append(), map_checker< Container >::begin(), map_checker< Container >::end(), m_DefaultProperties, m_Lock, m_Services, CJsonNode::NewArrayNode(), CJsonNode::NewObjectNode(), CNSTServiceProperties::Serialize(), CJsonNode::SetByKey(), and CJsonNode::SetString().
Referenced by CNetStorageServer::SerializeMetadataInfo().
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().
Definition at line 640 of file nst_service_parameters.cpp.
References set< Key, Compare >::clear(), NStr::eNocase, IRegistry::EnumerateSections(), IRegistry::GetBool(), IRegistry::HasEntry(), set< Key, Compare >::insert(), m_ServicesDefaultNoMetadata, m_ServicesExplicitNoMetadata, NStr::StartsWith(), and string.
Referenced by ReadConfiguration().
|
private |
Definition at line 600 of file nst_service_parameters.cpp.
References NStr::fAllowTrailingSpaces, NStr::StringToDouble(), val, and rapidjson::value.
Referenced by x_ReadServiceProperties().
Definition at line 619 of file nst_service_parameters.cpp.
References ReadTimeSpan(), val, and rapidjson::value.
Referenced by x_ReadServiceProperties().
|
private |
Definition at line 546 of file nst_service_parameters.cpp.
References NStr::EndsWith(), NStr::eNocase, IRegistry::GetString(), IRegistry::HasEntry(), TNSTDBValue< ValueType >::m_IsNull, ReadTimeSpan(), result, NStr::TruncateSpacesInPlace(), rapidjson::value, x_ReadProlongInTTLs(), and x_ReadProlongProperty().
Referenced by ReadConfiguration().
|
private |
Definition at line 202 of file nst_service_parameters.hpp.
Referenced by GetDefaultProperties(), ReadConfiguration(), and Serialize().
|
private |
Definition at line 201 of file nst_service_parameters.hpp.
Referenced by CNSTServiceRegistry(), GetProlongOnRead(), GetProlongOnRelocate(), GetProlongOnWrite(), GetServiceProperties(), and GetTTL().
|
mutableprivate |
Definition at line 215 of file nst_service_parameters.hpp.
Referenced by GetDefaultProperties(), GetProlongOnRead(), GetProlongOnRelocate(), GetProlongOnWrite(), GetServiceProperties(), GetTTL(), IsKnown(), ReadConfiguration(), Serialize(), and Size().
|
private |
Definition at line 208 of file nst_service_parameters.hpp.
Referenced by GetProlongOnRead(), GetProlongOnRelocate(), GetProlongOnWrite(), GetServiceProperties(), GetTTL(), IsKnown(), ReadConfiguration(), Serialize(), and Size().
Definition at line 213 of file nst_service_parameters.hpp.
Referenced by IsKnown(), and x_GetMetadataServices().
Definition at line 212 of file nst_service_parameters.hpp.
Referenced by IsKnown(), and x_GetMetadataServices().