Search Toolkit Book for CNetStorageHandler
#include "nst_handler.hpp"
(Private to src/app/netstorage
.)
Definition at line 112 of file nst_handler.hpp.
◆ FProcessor ◆ EHTTPStatus Enumerator eStatus_OK eStatus_BadRequest eStatus_NotFound eStatus_Inactive eStatus_Probe eStatus_SocketIOError eStatus_ServerError eStatus_NotImplemented eStatus_ShuttingDownDefinition at line 131 of file nst_handler.hpp.
◆ EOp ◆ EReadMode ◆ ESocketTimeoutTreat ◆ CNetStorageHandler() ◆ ~CNetStorageHandler() CNetStorageHandler::~CNetStorageHandler ( )Definition at line 182 of file nst_handler.cpp.
◆ GetEventsToPollFor()Following three methods are guaranteed to be called NOT at the same time as On*, so if you implement them you should not guard the variables which they can use with mutexes.
Reimplemented from IServer_ConnectionHandler.
Definition at line 187 of file nst_handler.cpp.
References eIO_Read, eIO_ReadWrite, and m_OutputQueue.
◆ OnClose()The connection has closed (with information on type of closing)
Reimplemented from IServer_ConnectionHandler.
Definition at line 352 of file nst_handler.cpp.
References IServer_ConnectionHandler::eClientClose, eIO_Read, eIO_ReadWrite, eIO_Success, eIO_Write, CNSTTiming::Empty(), IServer_ConnectionHandler::eOurClose, ERR_POST, eStatus_SocketIOError, CDiagContext::Extra(), CSocket::GetCount(), GetDiagContext(), IServer_ConnectionHandler::GetSocket(), IO_StatusStr(), CRef< C, Locker >::IsNull(), m_CmdContext, m_ConnContext, m_ObjectBeingWritten, m_Timing, CRef< C, Locker >::NotNull(), NULL, CDiagContext_Extra::Print(), CDiagContext::PrintRequestStop(), CRef< C, Locker >::Reset(), CNSTTiming::Serialize(), CRequestContext::SetBytesRd(), CRequestContext::SetBytesWr(), CDiagContext::SetRequestContext(), CRequestContext::SetRequestStatus(), CSocket::Shutdown(), and Warning().
Referenced by OnRead().
◆ OnOpen() void CNetStorageHandler::OnOpen ( void ) virtual ◆ OnOverflow()Runs when there are insufficient resources to queue a connection, prior to closing it.
Provides a reason why the connection is being close, which can be reported back to the client.
Reimplemented from IServer_ConnectionHandler.
Definition at line 430 of file nst_handler.cpp.
References eOR_ConnectionPoolFull, eOR_RequestQueueFull, eOR_UnpollableSocket, ERR_POST, m_CmdContext, m_ConnContext, CRef< C, Locker >::NotNull(), and CDiagContext::SetRequestContext().
◆ OnRead() void CNetStorageHandler::OnRead ( void ) virtualThe client has just sent data.
Implements IServer_ConnectionHandler.
Definition at line 214 of file nst_handler.cpp.
References CNSTTiming::Append(), CServer::CloseConnection(), CNSTPreciseTime::Current(), IServer_ConnectionHandler::eClientClose, eIO_Interrupt, eIO_NotSupported, eIO_Open, eIO_Success, eIO_Timeout, eReadMessages, eReadRawData, ERR_POST, eStatus_BadRequest, eStatus_NotImplemented, eStatus_Probe, eStatus_ServerError, CJsonOverUTTPReader::GetMessage(), CSocket::GetPeerAddress(), IServer_ConnectionHandler::GetSocket(), CSocket::GetStatus(), CNetStorageServer::IsLogTimingClientSocket(), CJsonNode::IsObject(), kReadBufferSize, m_CmdContext, m_ConnContext, m_FirstMessage, m_JSONReader, m_ReadBuffer, m_ReadMode, m_Server, m_Timing, m_UTTPReader, CRef< C, Locker >::NotNull(), OnClose(), OnTimeout(), CSocket::Read(), CJsonOverUTTPReader::ReadMessage(), CJsonOverUTTPReader::Reset(), CUTTPReader::SetNewBuffer(), CDiagContext::SetRequestContext(), Warning(), x_OnMessage(), x_ReadRawData(), and x_SetConnRequestStatus().
◆ OnTimeout() void CNetStorageHandler::OnTimeout ( void ) virtual ◆ OnWrite() void CNetStorageHandler::OnWrite ( void ) virtual ◆ x_CheckExistanceStatus() void CNetStorageHandler::x_CheckExistanceStatus ( int status ) private ◆ x_CheckExpirationStatus() void CNetStorageHandler::x_CheckExpirationStatus ( int status ) privateDefinition at line 4054 of file nst_handler.cpp.
References kObjectExpired, kSPObjectExpired, and NCBI_THROW.
Referenced by x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetSize(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), and x_ProcessWrite().
◆ x_CheckICacheSettings() ◆ x_CheckNonAnonymousClient() void CNetStorageHandler::x_CheckNonAnonymousClient ( const string & op ) const privateDefinition at line 4062 of file nst_handler.cpp.
References m_Client, and NCBI_THROW.
Referenced by x_ProcessAckAlert(), x_ProcessConfiguration(), x_ProcessCreate(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetClientsInfo(), x_ProcessGetMetadataInfo(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessGetUserObjects(), x_ProcessGetUsersInfo(), x_ProcessHealth(), x_ProcessInfo(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessReconfigure(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), x_ProcessShutdown(), and x_ProcessWrite().
◆ x_CheckObjectLoc() void CNetStorageHandler::x_CheckObjectLoc ( const string & object_loc ) const private ◆ x_CheckUserKey() void CNetStorageHandler::x_CheckUserKey ( const SUserKey & user_key ) private ◆ x_ConvertMetadataArgument()Definition at line 3667 of file nst_handler.cpp.
References eMetadataDefaultOff, eMetadataExplicitOff, eMetadataNotSpecified, eMetadataOn, eMetadataRequired, eMetadataUnknown, eUnknownService, g_GetSupportedMetadataOptions(), g_IdToMetadataOption(), CJsonNode::GetString(), CJsonNode::HasKey(), CNetStorageServer::InMetadataServices(), m_Server, m_Service, NCBI_THROW, result, NStr::ToLower(), NStr::TruncateSpaces(), and rapidjson::value.
Referenced by x_ProcessHello().
◆ x_CreateClient() void CNetStorageHandler::x_CreateClient ( void ) privateDefinition at line 3927 of file nst_handler.cpp.
References m_Client, m_DBClientID, and x_GetClientID().
Referenced by x_ProcessCreate(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetUserObjects(), x_ProcessRead(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), and x_ProcessWrite().
◆ x_CreateConnContext() void CNetStorageHandler::x_CreateConnContext ( void ) privateDefinition at line 1032 of file nst_handler.cpp.
References eSAF_IP, eStatus_OK, GetDiagContext(), IServer_ConnectionHandler::GetSocket(), m_ConnContext, NULL, CDiagContext::PrintRequestStart(), CRef< C, Locker >::Reset(), CRequestContext::SetClientIP(), CRequestContext::SetHitID(), CDiagContext::SetRequestContext(), CRequestContext::SetRequestID(), CRequestContext::SetRequestStatus(), and x_GetConnRef().
Referenced by OnOpen().
◆ x_CreateObjectStream()Definition at line 3611 of file nst_handler.cpp.
References CDirectNetStorage::Create(), CRegistryException::eDecryptionFailed, flags, CNetStorageServer::GetCompoundIDPool(), CNcbiApplicationAPI::GetConfig(), CParseTemplException< TBase >::GetErrCode(), CNcbiApplication::Instance(), m_Server, m_Service, CNetStorageServer::RegisterNetStorageAPIDecryptError(), CNetStorageServer::ReportNetStorageAPIDecryptSuccess(), and CNetStorageServer::ResetDecryptCacheIfNeed().
Referenced by x_ProcessCreate().
◆ x_CreateUser() void CNetStorageHandler::x_CreateUser ( void ) private ◆ x_DetectMetaDBNeedOnCreate() ◆ x_DetectMetaDBNeedOnGetObjectInfo()Definition at line 3883 of file nst_handler.cpp.
References eMetadataDisabled, ExtractStorageFlags(), flags, fNST_NoMetaData, CNetStorageServer::GetCompoundIDPool(), CNetStorageObjectLoc::GetServiceName(), CNetStorageServer::GetServiceProperties(), CJsonNode::GetString(), CJsonNode::HasKey(), CNetStorageObjectLoc::IsMetaDataDisabled(), m_MetadataOption, m_Server, m_Service, and x_CheckObjectLoc().
Referenced by x_ProcessExists(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), and x_ProcessLockFTPath().
◆ x_DetectMetaDBNeedUpdate()Definition at line 3798 of file nst_handler.cpp.
References eMetadataDisabled, eMetadataNotSpecified, eMetadataRequired, ExtractStorageFlags(), flags, fNST_NoMetaData, CNetStorageServer::GetCompoundIDPool(), CNetStorageObjectLoc::GetServiceName(), CNetStorageServer::GetServiceProperties(), CJsonNode::GetString(), CJsonNode::HasKey(), CNetStorageObjectLoc::IsMetaDataDisabled(), m_MetadataOption, m_Server, m_Service, NCBI_THROW, and x_CheckObjectLoc().
Referenced by x_ProcessDelete(), x_ProcessRead(), x_ProcessRelocate(), x_ProcessSetExpTime(), and x_ProcessWrite().
◆ x_FillObjectInfo() ◆ x_FindProcessor() ◆ x_GetClientID() ◆ x_GetConnRef() string CNetStorageHandler::x_GetConnRef ( void ) private ◆ x_GetObject()Definition at line 3468 of file nst_handler.cpp.
References CRegistryException::eDecryptionFailed, CDiagContext::Extra(), flags, CNetStorageServer::GetCompoundIDPool(), CNcbiApplicationAPI::GetConfig(), GetDiagContext(), CParseTemplException< TBase >::GetErrCode(), CJsonNode::GetString(), CJsonNode::HasKey(), CNcbiApplication::Instance(), SUserKey::m_AppDomain, m_ConnContext, m_Server, m_Service, SUserKey::m_UniqueID, CRef< C, Locker >::NotNull(), CDirectNetStorage::Open(), CDirectNetStorageByKey::Open(), CDiagContext_Extra::Print(), CNetStorageServer::RegisterNetStorageAPIDecryptError(), CNetStorageServer::ReportNetStorageAPIDecryptSuccess(), CNetStorageServer::ResetDecryptCacheIfNeed(), x_CheckObjectLoc(), and x_GetStorageParams().
Referenced by x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), and x_ProcessWrite().
◆ x_GetPeerAddress() unsigned int CNetStorageHandler::x_GetPeerAddress ( void ) private ◆ x_GetStorageParams() ◆ x_GetUserID() ◆ x_OnData() void CNetStorageHandler::x_OnData ( const void * data, size_t data_size ) privateDefinition at line 635 of file nst_handler.cpp.
References CNSTClientRegistry::AddBytesWritten(), CNSTTiming::Append(), CreateErrorResponseMessage(), CNSTPreciseTime::Current(), data, ERR_POST, eVoid, CNetStorageServerError::eWriteError, eWriteOp, CNetStorageServer::GetClientRegistry(), CNetStorageObject::GetLoc(), GetReplyMessageProperties(), CNetStorageObjectLoc::GetUniqueKey(), CNetStorageServer::IsLogTimingNSTAPI(), kScopeStdException, kScopeUnknownException, CDirectNetStorageObject::Locator(), m_Client, m_CmdContext, m_CreateRequest, m_DataMessageSN, m_ObjectBeingWritten, m_ObjectSize, m_Server, m_Timing, m_WriteCreateNeedMetaDBUpdate, m_WriteServiceProps, NCBI_ERRCODE_X_NAME, CRef< C, Locker >::NotNull(), NStr::NumericToString(), CRequestContext::SetBytesWr(), CNetStorageObject::Write(), x_ProlongObjectOnFailure(), and x_SendSyncMessage().
Referenced by x_ReadRawData().
◆ x_OnMessage()Definition at line 487 of file nst_handler.cpp.
References CNSTTiming::Clear(), CServer::CloseConnection(), CreateErrorResponseMessage(), CNetStorageServerError::eInternalError, CNetStorageServerError::eInvalidMessageHeader, eIO_Success, CNetStorageServerError::eMessageAfterBye, CNetStorageServerError::eNetStorageAttributeNotFound, CNetStorageServerError::eNetStorageAttributeValueNotFound, ERR_POST, CNetStorageServerException::ErrCodeToHTTPStatusCode(), CNetStorageServerError::eShuttingDown, eStatus_BadRequest, eStatus_ServerError, eStatus_ShuttingDown, CNetStorageServerError::eUnknownError, ExtractCommonFields(), CNetStorageServer::GetClientRegistry(), CException::GetErrCode(), GetReplyMessageProperties(), IServer_ConnectionHandler::GetSocket(), CException::GetType(), kScopeLogic, kScopeStdException, kScopeUnknownException, m_ByeReceived, m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, NCBI_ERRCODE_X_NAME, CNetStorageServer::ShutdownRequested(), CNSTClientRegistry::Touch(), Warning(), CException::what(), x_FindProcessor(), x_PrintMessageRequestStart(), x_PrintMessageRequestStop(), x_ProcessHello(), x_SendSyncMessage(), and x_SetCmdRequestStatus().
Referenced by OnRead().
◆ x_OnSocketWriteError() void CNetStorageHandler::x_OnSocketWriteError ( EIO_Status status, size_t bytes_written, const char * output_buffer, size_t output_buffer_size ) privateDefinition at line 928 of file nst_handler.cpp.
References CServer::CloseConnection(), ERR_POST, eStatus_OK, eStatus_SocketIOError, CNetStorageServer::GetClientRegistry(), CSocket::GetPeerAddress(), CRequestContext::GetRequestStatus(), IServer_ConnectionHandler::GetSocket(), IO_StatusStr(), m_Client, m_CmdContext, m_ConnContext, m_Server, CRef< C, Locker >::NotNull(), NStr::NumericToString(), NStr::PrintableString(), CNSTClientRegistry::RegisterSocketWriteError(), and CRequestContext::SetRequestStatus().
Referenced by x_SendOutputBuffer(), and x_SendOverUTTP().
◆ x_OptionalExpirationUpdate()Definition at line 3990 of file nst_handler.cpp.
References AppendError(), CNetStorageServerError::eDatabaseError, CTimeout::eInfinite, CNetStorageServerError::eInternalError, CNetStorageException::eNotSupported, ERR_POST, CException::GetErrCode(), GetReplyMessageProperties(), kScopeUnknownException, msg(), and NCBI_ERRCODE_X_NAME.
Referenced by x_ProcessRead(), and x_SendWriteConfirmation().
◆ x_PrintMessageRequestStart() void CNetStorageHandler::x_PrintMessageRequestStart ( const CJsonNode & message ) privateDefinition at line 1083 of file nst_handler.cpp.
References eStatus_OK, CDiagContext_Extra::Flush(), CJsonNode::fVerbatimIfString, GetDiagContext(), IServer_ConnectionHandler::GetSocket(), CRef< C, Locker >::IsNull(), CJsonNode::Iterate(), ncbi::grid::netcache::search::fields::key, m_CmdContext, m_ConnContext, CRef< C, Locker >::NotNull(), CDiagContext_Extra::Print(), CDiagContext::PrintRequestStart(), CRef< C, Locker >::Reset(), CDiagContext::SetRequestContext(), CRequestContext::SetRequestID(), CRequestContext::SetRequestStatus(), SetSessionAndIPAndPHID(), and x_GetConnRef().
Referenced by x_OnMessage().
◆ x_PrintMessageRequestStop() void CNetStorageHandler::x_PrintMessageRequestStop ( void ) privateDefinition at line 1132 of file nst_handler.cpp.
References CNSTTiming::Empty(), CDiagContext::Extra(), GetDiagContext(), m_CmdContext, m_Timing, CRef< C, Locker >::NotNull(), NULL, CDiagContext_Extra::Print(), CDiagContext::PrintRequestStop(), CRef< C, Locker >::Reset(), CNSTTiming::Serialize(), and CDiagContext::SetRequestContext().
Referenced by x_OnMessage(), x_ProcessAckAlert(), x_ProcessBye(), x_ProcessConfiguration(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetClientsInfo(), x_ProcessGetMetadataInfo(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessGetUserObjects(), x_ProcessGetUsersInfo(), x_ProcessHealth(), x_ProcessHello(), x_ProcessInfo(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessReconfigure(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), x_ProcessShutdown(), and x_SendWriteConfirmation().
◆ x_ProcessAckAlert()Definition at line 1331 of file nst_handler.cpp.
References CNetStorageServer::AcknowledgeAlert(), CNSTClientRegistry::AppendType(), AppendWarning(), CreateResponseMessage(), eAccess, eAcknowledged, CNSTClient::eAdministrator, eAlertAlreadyAcknowledgedWarning, eAlertNotFoundWarning, eAlertUnknownAcknowledgeResultWarning, eAlreadyAcknowledged, eNotFound, CNetStorageServer::GetClientRegistry(), CJsonNode::GetString(), CJsonNode::HasKey(), CNetStorageServer::IsAdminClientName(), kScopeLogic, m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, msg(), NCBI_ERRCODE_X_NAME, NCBI_THROW, CNetStorageServer::RegisterAlert(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessBye() ◆ x_ProcessConfiguration()Definition at line 1247 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTClient::eAdministrator, CTimeout::GetAsDouble(), CNetStorageServer::GetBackendConfiguration(), CNetStorageServer::GetClientRegistry(), CNcbiApplicationAPI::GetConfig(), CNetStorageServer::GetDb(), CNSTDatabase::GetExecuteSPTimeout(), CNcbiApplication::Instance(), m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, CJsonNode::SetByKey(), CJsonNode::SetDouble(), CJsonNode::SetString(), IRegistry::Write(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessCreate()Definition at line 2390 of file nst_handler.cpp.
References CNSTClientRegistry::AddObjectsWritten(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataMonitoring, eReadRawData, CNSTClient::eWriter, CDiagContext::Extra(), ExtractICacheSettings(), ExtractStorageFlags(), flags, CNetStorageServer::GetClientRegistry(), GetDiagContext(), CNetStorageObject::GetLoc(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CDirectNetStorageObject::Locator(), m_Client, m_ConnContext, m_CreateRequest, m_DataMessageSN, m_MetadataOption, m_ObjectBeingWritten, m_ObjectSize, m_ReadMode, SCommonRequestArguments::m_SerialNumber, m_Server, m_WriteCreateNeedMetaDBUpdate, NCBI_THROW, CRef< C, Locker >::NotNull(), CDiagContext_Extra::Print(), CJsonNode::SetString(), x_CheckICacheSettings(), x_CheckNonAnonymousClient(), x_CreateClient(), x_CreateObjectStream(), x_CreateUser(), x_DetectMetaDBNeedOnCreate(), and x_SendSyncMessage().
◆ x_ProcessDelAttr()Definition at line 2322 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), AppendWarning(), CreateResponseMessage(), eAttributeNotFoundWarning, eAttributeValueNotFoundWarning, eMetadataDisabled, eMetadataMonitoring, eObjectNotFoundWarning, CNSTClient::eWriter, CNSTDatabase::ExecSP_DelAttribute(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CJsonNode::GetString(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), kObjectNotFound, kScopeLogic, kSPObjectNotFound, kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, NCBI_ERRCODE_X_NAME, NCBI_THROW, x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_GetObject(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_ValidateWriteMetaDBAccess().
◆ x_ProcessDelete()Definition at line 2752 of file nst_handler.cpp.
References CNSTClientRegistry::AddObjectsDeleted(), CNSTTiming::Append(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTPreciseTime::Current(), eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, eNSTRR_NotFound, CNSTClient::eWriter, CNSTDatabase::ExecSP_RemoveObject(), CJsonNode::GetBoolean(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CNetStorageServer::IsLogTimingNSTAPI(), kSPObjectNotFound, kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, NCBI_THROW, CDirectNetStorageObject::Remove(), result, CJsonNode::SetBoolean(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_DetectMetaDBNeedUpdate(), x_GetObject(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessExists()Definition at line 3004 of file nst_handler.cpp.
References CNSTTiming::Append(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTPreciseTime::Current(), CNSTClient::eReader, ERR_POST, CNSTDatabase::ExecSP_GetObjectSizeAndLocator(), CDirectNetStorage::Exists(), CDirectNetStorageByKey::Exists(), flags, CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetCompoundIDPool(), CNetStorageServer::GetDb(), CJsonNode::GetString(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CNcbiApplication::Instance(), CNetStorageServer::IsLogTimingNSTAPI(), kSPStatusOK, CDirectNetStorageObject::Locator(), SUserKey::m_AppDomain, m_Client, TNSTDBValue< ValueType >::m_IsNull, SCommonRequestArguments::m_SerialNumber, m_Server, m_Service, m_Timing, SUserKey::m_UniqueID, TNSTDBValue< ValueType >::m_Value, CJsonNode::SetBoolean(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_DetectMetaDBNeedOnGetObjectInfo(), x_GetObject(), x_GetStorageParams(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessGetAttr()Definition at line 2171 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataDisabled, eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, CNSTClient::eReader, CNSTDatabase::ExecSP_GetAttribute(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CJsonNode::GetString(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, NCBI_THROW, CJsonNode::SetString(), NStr::ToLower(), rapidjson::value, x_CheckExistanceStatus(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_GetObject(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_ValidateWriteMetaDBAccess().
◆ x_ProcessGetAttrList()Definition at line 1953 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataDisabled, eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, CNSTClient::eReader, CNSTDatabase::ExecSP_GetAttributeNames(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, names, NCBI_THROW, CJsonNode::NewArrayNode(), CJsonNode::SetByKey(), x_CheckExistanceStatus(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_GetObject(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_ValidateWriteMetaDBAccess().
◆ x_ProcessGetClientObjects()Definition at line 2007 of file nst_handler.cpp.
References CJsonNode::AppendString(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataDisabled, eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, CNSTClient::eReader, CNSTDatabase::ExecSP_GetClientObjects(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CJsonNode::GetInteger(), CJsonNode::GetString(), CJsonNode::HasKey(), kSPStatusOK, m_Client, TNSTDBValue< ValueType >::m_IsNull, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, TNSTDBValue< ValueType >::m_Value, NCBI_THROW, CJsonNode::NewArrayNode(), CJsonNode::SetByKey(), CJsonNode::SetInteger(), NStr::TruncateSpaces(), x_CheckNonAnonymousClient(), x_CreateClient(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_ValidateWriteMetaDBAccess().
◆ x_ProcessGetClientsInfo()Definition at line 1572 of file nst_handler.cpp.
References CJsonNode::AppendString(), CNSTClientRegistry::AppendType(), AppendWarning(), CreateResponseMessage(), CNSTClient::eAdministrator, eDatabaseWarning, eMetadataMonitoring, eMetadataOn, CNSTDatabase::ExecSP_GetClients(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), GetReplyMessageProperties(), CNetStorageServer::InMetadataServices(), kScopeLogic, kScopeUnknownException, kSPStatusOK, m_Client, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Service, NCBI_ERRCODE_X_NAME, CJsonNode::NewArrayNode(), CNSTClientRegistry::Serialize(), CJsonNode::SetByKey(), CJsonNode::SetString(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessGetMetadataInfo()Definition at line 1678 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTClient::eAdministrator, CNetStorageServer::GetClientRegistry(), m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, CNetStorageServer::SerializeMetadataInfo(), CJsonNode::SetByKey(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessGetObjectInfo()Definition at line 1695 of file nst_handler.cpp.
References CNSTTiming::Append(), AppendError(), CNSTClientRegistry::AppendType(), AppendWarning(), CTimeSpan::AsSmartString(), CreateResponseMessage(), CNSTPreciseTime::Current(), CurrentTime(), eDatabaseWarning, eMetadataMonitoring, CNSTClient::eReader, eRemoteObjectInfoWarning, ERR_POST, CNSTDatabase::ExecSP_UpdateUserIDForObject(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CException::GetErrCode(), CNetStorageObject::GetInfo(), GetReplyMessageProperties(), CNSTServiceProperties::GetTTL(), CException::GetType(), CNetStorageObjectLoc::GetUniqueKey(), CDirectNetStorageObject::GetUserInfo(), CNetStorageServer::IsLogTimingNSTAPI(), CJsonNode::Iterate(), ncbi::grid::netcache::search::fields::key, kScopeUnknownException, kSPStatusOK, kTimeSpanFlags, CDirectNetStorageObject::Locator(), m_Client, TNSTDBValue< ValueType >::m_IsNull, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, TNSTDBValue< ValueType >::m_Value, msg(), NCBI_ERRCODE_X_NAME, CJsonNode::SetByKey(), CNSTUserID::SetName(), CNSTUserID::SetNamespace(), CJsonNode::SetString(), CNetStorageObjectInfo::ToJSON(), CException::what(), x_CheckNonAnonymousClient(), x_DetectMetaDBNeedOnGetObjectInfo(), x_FillObjectInfo(), x_GetObject(), x_GetUserID(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_SetObjectInfoReply().
◆ x_ProcessGetSize()Definition at line 3101 of file nst_handler.cpp.
References CNSTTiming::Append(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTPreciseTime::Current(), CTimeout::eInfinite, CNSTClient::eReader, ERR_POST, CNSTDatabase::ExecSP_GetObjectSize(), CNSTDatabase::ExecSP_UpdateObjectSizeIfNULL(), CJsonNode::GetBoolean(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNetStorageObject::GetSize(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CNetStorageServer::IsLogTimingNSTAPI(), kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, TNSTDBValue< ValueType >::m_IsNull, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, TNSTDBValue< ValueType >::m_Value, CNetStorageObject::SetExpiration(), CJsonNode::SetInteger(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_DetectMetaDBNeedOnGetObjectInfo(), x_GetObject(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessGetUserObjects()Definition at line 2085 of file nst_handler.cpp.
References CJsonNode::AppendString(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataDisabled, eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, CNSTClient::eReader, CNSTDatabase::ExecSP_GetUserObjects(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CJsonNode::GetInteger(), CJsonNode::GetString(), CJsonNode::HasKey(), kSPStatusOK, m_Client, TNSTDBValue< ValueType >::m_IsNull, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, TNSTDBValue< ValueType >::m_Value, NCBI_THROW, CJsonNode::NewArrayNode(), CJsonNode::SetByKey(), CJsonNode::SetInteger(), NStr::ToLower(), NStr::TruncateSpaces(), x_CheckNonAnonymousClient(), x_CreateClient(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_ValidateWriteMetaDBAccess().
◆ x_ProcessGetUsersInfo()Definition at line 1635 of file nst_handler.cpp.
References CJsonNode::Append(), AppendError(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTClient::eAdministrator, eDatabaseWarning, CNSTDatabase::ExecSP_GetUsers(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), kScopeLogic, kScopeStdException, kScopeUnknownException, kSPStatusOK, m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, NCBI_ERRCODE_X_NAME, CJsonNode::NewArrayNode(), CJsonNode::NewObjectNode(), CJsonNode::SetByKey(), CJsonNode::SetString(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessHealth()Definition at line 1274 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), AppendWarning(), map_checker< Container >::begin(), CreateResponseMessage(), CNSTClient::eAdministrator, eDatabaseWarning, map_checker< Container >::end(), CNSTDatabase::ExecSP_GetStatDBInfo(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNSTDatabase::IsConnected(), kScopeStdException, kScopeUnknownException, m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, NCBI_ERRCODE_X_NAME, CJsonNode::NewObjectNode(), CNetStorageServer::SerializeAlerts(), CJsonNode::SetBoolean(), CJsonNode::SetByKey(), CJsonNode::SetString(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessHello()Definition at line 1160 of file nst_handler.cpp.
References CJsonNode::AsInteger(), CJsonNode::AsString(), client, CreateResponseMessage(), CJsonNode::eInteger, CJsonNode::eString, CJsonNode::GetByKey(), CNetStorageServer::GetClientRegistry(), CJsonNode::GetNodeType(), CJsonNode::GetString(), CJsonNode::HasKey(), m_Client, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Service, NCBI_THROW, NStr::NumericToString(), CNSTClientRegistry::Touch(), NStr::TruncateSpaces(), x_ConvertMetadataArgument(), x_GetPeerAddress(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
Referenced by x_OnMessage().
◆ x_ProcessInfo()Definition at line 1221 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNSTClient::eAdministrator, CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetCommandLine(), CDiagContext::GetPID(), CNetStorageServer::GetSessionID(), CNetStorageServer::GetStartTime(), CNcbiApplication::Instance(), m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, NETSTORAGED_BUILD_DATE, NETSTORAGED_PROTOCOL_VERSION, NETSTORAGED_VERSION, NST_FormatPreciseTime(), CJsonNode::SetInteger(), CJsonNode::SetString(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessLockFTPath()Definition at line 3373 of file nst_handler.cpp.
References CNSTTiming::Append(), CNSTClientRegistry::AppendType(), AppendWarning(), CMessageListener_Basic::Count(), CreateResponseMessage(), CNSTPreciseTime::Current(), eMetadataMonitoring, ERR_POST, CNSTClient::eWriter, CNSTDatabase::ExecSP_GetObjectExpiration(), CDirectNetStorageObject::FileTrack_Path(), CNetStorageServer::GetClientRegistry(), IMessage::GetCode(), CNetStorageServer::GetDb(), CMessageListener_Basic::GetMessage(), CNSTServiceProperties::GetProlongOnRead(), IMessage::GetSubCode(), IMessage_Base::GetText(), CNSTServiceProperties::GetTTL(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CNetStorageServer::IsLogTimingNSTAPI(), kScopeIMessage, kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, TNSTDBValue< ValueType >::m_IsNull, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, NCBI_THROW, IMessageListener::PushListener(), CJsonNode::SetString(), CNSTDatabase::UpdateExpirationIfExists(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_DetectMetaDBNeedOnGetObjectInfo(), x_GetObject(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessRead()Definition at line 2515 of file nst_handler.cpp.
References CNSTClientRegistry::AddBytesRead(), CNSTClientRegistry::AddObjectsRead(), CNSTTiming::Append(), AppendError(), CNSTClientRegistry::AppendType(), buffer, CNetStorageObject::Close(), CreateErrorResponseMessage(), CreateResponseMessage(), CNSTPreciseTime::Current(), CNetStorageServerError::eDatabaseError, eIO_Success, eMetadataNotSpecified, eMetadataRequired, CNetStorageObject::Eof(), CNSTClient::eReader, CNetStorageServerError::eReadError, eReadOp, ERR_POST, CNSTDatabase::ExecSP_DoesObjectExist(), CNSTDatabase::ExecSP_GetObjectExpiration(), CNSTDatabase::ExecSP_UpdateObjectOnRead(), CJsonNode::GetBoolean(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNetStorageObjectLoc::GetLocator(), CNSTServiceProperties::GetProlongOnRead(), GetReplyMessageProperties(), CNSTServiceProperties::GetTTL(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CNetStorageServer::IsLogTimingNSTAPI(), kObjectNotFound, kReadBufferSize, kScopeUnknownException, kSPObjectNotFound, CDirectNetStorageObject::Locator(), m_Client, m_CmdContext, m_DBClientID, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, m_UTTPWriter, msg(), NCBI_ERRCODE_X_NAME, NCBI_THROW, CRef< C, Locker >::NotNull(), CNetStorageObject::Read(), CUTTPWriter::SendChunk(), CUTTPWriter::SendControlSymbol(), CRequestContext::SetBytesRd(), string, x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_DetectMetaDBNeedUpdate(), x_GetObject(), x_OptionalExpirationUpdate(), x_PrintMessageRequestStop(), x_ProlongObjectOnFailure(), x_SendOverUTTP(), and x_SendSyncMessage().
◆ x_ProcessReconfigure()Definition at line 1384 of file nst_handler.cpp.
References CNetStorageServer::AcknowledgeAlert(), CNetStorageServer::AnybodyCanReconfigure(), CNSTClientRegistry::AppendType(), AppendWarning(), CreateResponseMessage(), eAccess, CNSTClient::eAdministrator, eConfigNotChangedWarning, eConfigOutOfSync, eDecryptAdminNames, eReconfigure, ERR_POST, eStartupConfig, CDiagContext::Extra(), CMetaRegistry::fReloadIfChanged, CNetStorageServer::GetBackendConfDiff(), CNetStorageServer::GetClientRegistry(), CNcbiApplicationAPI::GetConfig(), CNcbiApplicationAPI::GetConfigPath(), CNetStorageServer::GetDb(), GetDiagContext(), CNcbiApplication::Instance(), CNetStorageServer::IsAdminClientName(), CJsonNode::IsNull(), kScopeLogic, m_Client, m_ConnContext, SCommonRequestArguments::m_SerialNumber, m_Server, msg(), NCBI_ERRCODE_X_NAME, NCBI_THROW, CJsonNode::NewObjectNode(), CRef< C, Locker >::NotNull(), NST_GetConfigFileChecksum(), NSTGetBackendConfiguration(), NSTValidateConfigFile(), CDiagContext_Extra::Print(), SNetStorageServerParameters::Read(), CNetStorageServer::ReadMetadataConfiguration(), CNetStorageServer::RegisterAlert(), CNcbiEncrypt::Reload(), CNcbiApplicationAPI::ReloadConfig(), CNetStorageServer::SetAnybodyCanReconfigure(), CNetStorageServer::SetBackendConfiguration(), CJsonNode::SetByKey(), CNetStorageServer::SetDiskConfigFileChecksum(), CNSTDatabase::SetParameters(), CNetStorageServer::SetParameters(), CNetStorageServer::SetRAMConfigFileChecksum(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessRelocate()Definition at line 2834 of file nst_handler.cpp.
References CNSTClientRegistry::AddObjectsRelocated(), CNSTTiming::Append(), AppendError(), CNSTClientRegistry::AppendType(), CRelocateCallback::Callback(), CreateResponseMessage(), CNSTPreciseTime::Current(), CNetStorageServerError::eDatabaseError, CNetStorageException::eInterrupted, eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, eRelocateOp, ERR_POST, CNSTClient::eWriter, CNSTDatabase::ExecSP_DoesObjectExist(), CNSTDatabase::ExecSP_GetObjectExpiration(), CNSTDatabase::ExecSP_UpdateObjectOnRelocate(), CDiagContext::Extra(), ExtractICacheSettings(), ExtractStorageFlags(), CJsonNode::GetBoolean(), CJsonNode::GetByKey(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), GetDiagContext(), CException::GetErrCode(), CNSTServiceProperties::GetProlongOnRelocate(), GetReplyMessageProperties(), CNSTServiceProperties::GetTTL(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CNetStorageServer::IsLogTimingNSTAPI(), kObjectNotFound, kScopeUnknownException, kSPObjectNotFound, CDirectNetStorageObject::Locator(), m_Client, m_ConnContext, m_DBClientID, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Timing, msg(), NCBI_ERRCODE_X_NAME, NCBI_THROW, CRef< C, Locker >::NotNull(), CDiagContext_Extra::Print(), CDirectNetStorageObject::Relocate(), CJsonNode::SetString(), x_CheckExpirationStatus(), x_CheckICacheSettings(), x_CheckNonAnonymousClient(), x_CreateClient(), x_DetectMetaDBNeedUpdate(), x_GetObject(), x_PrintMessageRequestStop(), x_ProlongObjectOnFailure(), and x_SendSyncMessage().
◆ x_ProcessSetAttr()Definition at line 2247 of file nst_handler.cpp.
References CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataDisabled, eMetadataMonitoring, CNSTClient::eWriter, CNSTDatabase::ExecSP_AddAttribute(), CJsonNode::GetBoolean(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNetStorageObjectLoc::GetLocator(), CNetStorageServer::GetServiceTTL(), CJsonNode::GetString(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, m_DBClientID, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, m_Service, NCBI_THROW, NStr::ToLower(), rapidjson::value, x_CheckExistanceStatus(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_GetObject(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_ValidateWriteMetaDBAccess().
◆ x_ProcessSetExpTime()Definition at line 3206 of file nst_handler.cpp.
References AppendError(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), CNetStorageServerError::eDatabaseError, CTimeout::eInfinite, eMetadataDisabled, eMetadataMonitoring, eNegative, CNetStorageException::eNotExists, CNetStorageException::eNotSupported, NStr::EqualNocase(), CNetStorageServerError::eStorageError, CNSTClient::eWriter, CNSTDatabase::ExecSP_SetExpiration(), format, CJsonNode::GetBoolean(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CException::GetErrCode(), CNetStorageObjectLoc::GetLocator(), GetReplyMessageProperties(), CTimeSpan::GetSign(), CJsonNode::GetString(), CException::GetType(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CTimeSpan::IsEmpty(), kScopeUnknownException, kSPObjectNotFound, kSPStatusOK, CDirectNetStorageObject::Locator(), m_Client, m_DBClientID, TNSTDBValue< ValueType >::m_IsNull, m_MetadataOption, SCommonRequestArguments::m_SerialNumber, m_Server, TNSTDBValue< ValueType >::m_Value, msg(), NCBI_ERRCODE_X_NAME, NCBI_THROW, CTimeout::Set(), CNetStorageObject::SetExpiration(), CException::what(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_DetectMetaDBNeedUpdate(), x_GetObject(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessShutdown()Definition at line 1536 of file nst_handler.cpp.
References CreateResponseMessage(), eAccess, exit(), CJsonNode::GetString(), CJsonNode::HasKey(), CNetStorageServer::IsAdminClientName(), m_Client, SCommonRequestArguments::m_SerialNumber, m_Server, msg(), NCBI_THROW, CNetStorageServer::RegisterAlert(), CNetStorageServer::SetShutdownFlag(), x_CheckNonAnonymousClient(), x_PrintMessageRequestStop(), and x_SendSyncMessage().
◆ x_ProcessWrite()Definition at line 2445 of file nst_handler.cpp.
References CNSTClientRegistry::AddObjectsWritten(), CNSTClientRegistry::AppendType(), CreateResponseMessage(), eMetadataMonitoring, eMetadataNotSpecified, eMetadataRequired, eReadRawData, CNSTClient::eWriter, CNSTDatabase::ExecSP_DoesObjectExist(), CJsonNode::GetBoolean(), CNetStorageServer::GetClientRegistry(), CNetStorageServer::GetDb(), CNetStorageObjectLoc::GetLocator(), CNetStorageObjectLoc::GetUniqueKey(), CJsonNode::HasKey(), CDirectNetStorageObject::Locator(), m_Client, m_CreateRequest, m_DataMessageSN, m_MetadataOption, m_ObjectBeingWritten, m_ObjectSize, m_ReadMode, SCommonRequestArguments::m_SerialNumber, m_Server, m_WriteCreateNeedMetaDBUpdate, m_WriteServiceProps, NCBI_THROW, CJsonNode::SetString(), x_CheckExistanceStatus(), x_CheckExpirationStatus(), x_CheckNonAnonymousClient(), x_CreateClient(), x_CreateUser(), x_DetectMetaDBNeedUpdate(), x_GetObject(), and x_SendSyncMessage().
◆ x_ProlongObjectOnFailure()Definition at line 2696 of file nst_handler.cpp.
References eReadOp, eRelocateOp, ERR_POST, eWriteOp, CNSTDatabase::ExecSP_GetObjectExpiration(), CNetStorageServer::GetDb(), CNSTServiceProperties::GetProlongOnRead(), CNSTServiceProperties::GetProlongOnRelocate(), CNSTServiceProperties::GetProlongOnWrite(), CNSTServiceProperties::GetTTL(), TNSTDBValue< ValueType >::m_IsNull, m_Server, and CNSTDatabase::UpdateExpirationIfExists().
Referenced by x_OnData(), x_ProcessRead(), and x_ProcessRelocate().
◆ x_ReadRawData() bool CNetStorageHandler::x_ReadRawData ( ) privateDefinition at line 456 of file nst_handler.cpp.
References CServer::CloseConnection(), CUTTPReader::eChunk, CUTTPReader::eChunkPart, CUTTPReader::eControlSymbol, CUTTPReader::eEndOfBuffer, eReadMessages, ERR_POST, eStatus_BadRequest, CUTTPReader::GetChunkPart(), CUTTPReader::GetChunkPartSize(), CUTTPReader::GetControlSymbol(), CUTTPReader::GetNextEvent(), IServer_ConnectionHandler::GetSocket(), m_ReadMode, m_Server, m_UTTPReader, x_OnData(), x_SendWriteConfirmation(), and x_SetConnRequestStatus().
Referenced by OnRead().
◆ x_SendAsyncMessage() void CNetStorageHandler::x_SendAsyncMessage ( const CJsonNode & message ) private ◆ x_SendOutputBuffer()Definition at line 969 of file nst_handler.cpp.
References CNSTTiming::Append(), CNSTPreciseTime::Current(), eIO_Success, eIO_Timeout, eTimeoutIsOK, CJsonOverUTTPWriter::GetOutputBuffer(), IServer_ConnectionHandler::GetSocket(), CNetStorageServer::IsLogTimingClientSocket(), m_JSONWriter, m_Server, m_Timing, CJsonOverUTTPWriter::NextOutputBuffer(), NStr::NumericToString(), CSocket::Write(), x_OnSocketWriteError(), and x_SetQuickAcknowledge().
Referenced by OnWrite(), and x_SendSyncMessage().
◆ x_SendOverUTTP()Definition at line 3634 of file nst_handler.cpp.
References CNSTTiming::Append(), CNSTPreciseTime::Current(), eIO_Success, CUTTPWriter::GetOutputBuffer(), IServer_ConnectionHandler::GetSocket(), CNetStorageServer::IsLogTimingClientSocket(), m_Server, m_Timing, m_UTTPWriter, CUTTPWriter::NextOutputBuffer(), NStr::NumericToString(), result, CSocket::Write(), and x_OnSocketWriteError().
Referenced by x_ProcessRead().
◆ x_SendSyncMessage()Definition at line 896 of file nst_handler.cpp.
References CJsonOverUTTPWriter::CompleteMessage(), eIO_Success, m_JSONWriter, CJsonOverUTTPWriter::WriteMessage(), and x_SendOutputBuffer().
Referenced by CRelocateCallback::Callback(), x_OnData(), x_OnMessage(), x_ProcessAckAlert(), x_ProcessBye(), x_ProcessConfiguration(), x_ProcessCreate(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetClientsInfo(), x_ProcessGetMetadataInfo(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessGetUserObjects(), x_ProcessGetUsersInfo(), x_ProcessHealth(), x_ProcessHello(), x_ProcessInfo(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessReconfigure(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), x_ProcessShutdown(), x_ProcessWrite(), and x_SendWriteConfirmation().
◆ x_SendWriteConfirmation() void CNetStorageHandler::x_SendWriteConfirmation ( ) privateDefinition at line 731 of file nst_handler.cpp.
References CNSTTiming::Append(), AppendError(), CNetStorageObject::Close(), CreateResponseMessage(), CNSTPreciseTime::Current(), CNetStorageServerError::eDatabaseError, eDatabaseWarning, ERR_POST, eStatus_ServerError, CNetStorageServerError::eUnknownError, eVoid, CNetStorageServerError::eWriteError, CNSTDatabase::ExecSP_CreateObjectWithClientID(), CNSTDatabase::ExecSP_GetObjectExpiration(), CNSTDatabase::ExecSP_UpdateObjectOnWrite(), CNetStorageServer::GetDb(), CNetStorageObject::GetLoc(), CNetStorageObjectLoc::GetLocator(), CNSTServiceProperties::GetProlongOnWrite(), GetReplyMessageProperties(), CNSTServiceProperties::GetTTL(), CNetStorageObjectLoc::GetUniqueKey(), CNetStorageServer::IsLogTimingNSTAPI(), kScopeUnknownException, CDirectNetStorageObject::Locator(), m_CreateRequest, m_CreateTTL, m_DataMessageSN, m_DBClientID, m_DBUserID, m_ObjectBeingWritten, m_ObjectSize, m_Server, m_Timing, m_WriteCreateNeedMetaDBUpdate, m_WriteServiceProps, NCBI_ERRCODE_X_NAME, CNetStorageObject::Write(), x_OptionalExpirationUpdate(), x_PrintMessageRequestStop(), x_SendSyncMessage(), and x_SetCmdRequestStatus().
Referenced by x_ReadRawData().
◆ x_SetCmdRequestStatus() void CNetStorageHandler::x_SetCmdRequestStatus ( unsigned int status ) inlineprivate ◆ x_SetConnRequestStatus() void CNetStorageHandler::x_SetConnRequestStatus ( unsigned int status ) inlineprivate ◆ x_SetObjectInfoReply() [1/3] ◆ x_SetObjectInfoReply() [2/3] ◆ x_SetObjectInfoReply() [3/3] ◆ x_SetQuickAcknowledge() void CNetStorageHandler::x_SetQuickAcknowledge ( void ) private ◆ x_ValidateWriteMetaDBAccess() void CNetStorageHandler::x_ValidateWriteMetaDBAccess ( const CJsonNode & message, bool expect_object =true
) const private
Definition at line 3716 of file nst_handler.cpp.
References eMetadataDefaultOff, eMetadataExplicitOff, eMetadataOn, eUnknownService, ExtractStorageFlags(), flags, fNST_NoMetaData, CNetStorageServer::GetCompoundIDPool(), CNetStorageObjectLoc::GetServiceName(), CJsonNode::GetString(), CJsonNode::HasKey(), CNetStorageServer::InMetadataServices(), CNetStorageObjectLoc::IsMetaDataDisabled(), m_Server, m_Service, NCBI_THROW, and x_CheckObjectLoc().
Referenced by x_ProcessDelAttr(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetUserObjects(), and x_ProcessSetAttr().
◆ CRelocateCallback ◆ m_ByeReceived bool CNetStorageHandler::m_ByeReceived private ◆ m_Client string CNetStorageHandler::m_Client privateDefinition at line 198 of file nst_handler.hpp.
Referenced by x_CheckNonAnonymousClient(), x_CreateClient(), x_OnData(), x_OnMessage(), x_OnSocketWriteError(), x_ProcessAckAlert(), x_ProcessConfiguration(), x_ProcessCreate(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetClientsInfo(), x_ProcessGetMetadataInfo(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessGetUserObjects(), x_ProcessGetUsersInfo(), x_ProcessHealth(), x_ProcessHello(), x_ProcessInfo(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessReconfigure(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), x_ProcessShutdown(), and x_ProcessWrite().
◆ m_CmdContext ◆ m_ConnContextDefinition at line 192 of file nst_handler.hpp.
Referenced by OnClose(), OnOverflow(), OnRead(), OnTimeout(), x_CreateConnContext(), x_GetConnRef(), x_GetObject(), x_OnSocketWriteError(), x_PrintMessageRequestStart(), x_ProcessCreate(), x_ProcessReconfigure(), x_ProcessRelocate(), and x_SetConnRequestStatus().
◆ m_CreateRequest bool CNetStorageHandler::m_CreateRequest private ◆ m_CreateTTL ◆ m_DataMessageSN Int8 CNetStorageHandler::m_DataMessageSN private ◆ m_DBClientID Int8 CNetStorageHandler::m_DBClientID private ◆ m_DBUserID Int8 CNetStorageHandler::m_DBUserID private ◆ m_FirstMessage bool CNetStorageHandler::m_FirstMessage private ◆ m_JSONReader ◆ m_JSONWriter ◆ m_MetadataOptionDefinition at line 222 of file nst_handler.hpp.
Referenced by x_DetectMetaDBNeedOnCreate(), x_DetectMetaDBNeedOnGetObjectInfo(), x_DetectMetaDBNeedUpdate(), x_ProcessCreate(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetClientsInfo(), x_ProcessGetObjectInfo(), x_ProcessGetUserObjects(), x_ProcessHello(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), and x_ProcessWrite().
◆ m_ObjectBeingWritten ◆ m_ObjectSize Int8 CNetStorageHandler::m_ObjectSize private ◆ m_OutputQueue vector<CJsonNode> CNetStorageHandler::m_OutputQueue private ◆ m_OutputQueueMutex ◆ m_ReadBuffer ◆ m_ReadMode ◆ m_ServerDefinition at line 189 of file nst_handler.hpp.
Referenced by OnOpen(), OnRead(), x_ConvertMetadataArgument(), x_CreateObjectStream(), x_DetectMetaDBNeedOnCreate(), x_DetectMetaDBNeedOnGetObjectInfo(), x_DetectMetaDBNeedUpdate(), x_GetClientID(), x_GetObject(), x_GetPeerAddress(), x_GetUserID(), x_OnData(), x_OnMessage(), x_OnSocketWriteError(), x_ProcessAckAlert(), x_ProcessConfiguration(), x_ProcessCreate(), x_ProcessDelAttr(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetAttr(), x_ProcessGetAttrList(), x_ProcessGetClientObjects(), x_ProcessGetClientsInfo(), x_ProcessGetMetadataInfo(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessGetUserObjects(), x_ProcessGetUsersInfo(), x_ProcessHealth(), x_ProcessHello(), x_ProcessInfo(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessReconfigure(), x_ProcessRelocate(), x_ProcessSetAttr(), x_ProcessSetExpTime(), x_ProcessShutdown(), x_ProcessWrite(), x_ProlongObjectOnFailure(), x_ReadRawData(), x_SendAsyncMessage(), x_SendOutputBuffer(), x_SendOverUTTP(), x_SendWriteConfirmation(), and x_ValidateWriteMetaDBAccess().
◆ m_Service string CNetStorageHandler::m_Service privateDefinition at line 197 of file nst_handler.hpp.
Referenced by x_ConvertMetadataArgument(), x_CreateObjectStream(), x_DetectMetaDBNeedOnCreate(), x_DetectMetaDBNeedOnGetObjectInfo(), x_DetectMetaDBNeedUpdate(), x_GetObject(), x_ProcessExists(), x_ProcessGetClientsInfo(), x_ProcessHello(), x_ProcessSetAttr(), and x_ValidateWriteMetaDBAccess().
◆ m_TimingDefinition at line 235 of file nst_handler.hpp.
Referenced by OnClose(), OnRead(), x_OnData(), x_OnMessage(), x_PrintMessageRequestStop(), x_ProcessDelete(), x_ProcessExists(), x_ProcessGetObjectInfo(), x_ProcessGetSize(), x_ProcessLockFTPath(), x_ProcessRead(), x_ProcessRelocate(), x_SendOutputBuffer(), x_SendOverUTTP(), and x_SendWriteConfirmation().
◆ m_UTTPReader ◆ m_UTTPWriter ◆ m_WriteBuffer ◆ m_WriteCreateNeedMetaDBUpdate bool CNetStorageHandler::m_WriteCreateNeedMetaDBUpdate private ◆ m_WriteServiceProps ◆ sm_ProcessorsThe documentation for this class was generated from the following files:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4