NCBI C++ ToolKit
|
Search Toolkit Book for CPSGS_AsyncResolveBase
#include "async_resolve_base.hpp"
(Private to src/app/pubseq_gateway/server
.)
Public Member Functions | |
CPSGS_AsyncResolveBase () | |
CPSGS_AsyncResolveBase (shared_ptr< CPSGS_Request > request, shared_ptr< CPSGS_Reply > reply, TContinueResolveCB continue_resolve_cb, TSeqIdResolutionFinishedCB finished_cb, TSeqIdResolutionErrorCB error_cb, TSeqIdResolutionStartProcessingCB start_processing_cb) | |
virtual | ~CPSGS_AsyncResolveBase () |
void | Process (int16_t effective_version, int16_t effective_seq_id_type, list< string > &&secondary_id_list, string &&primary_seq_id, bool composed_ok, SBioseqResolution &&bioseq_resolution) |
void | x_OnBioseqInfo (vector< CBioseqInfoRecord > &&records) |
void | x_OnBioseqInfoWithoutSeqIdType (vector< CBioseqInfoRecord > &&records) |
void | x_OnBioseqInfoError (CRequestStatus::ECode status, int code, EDiagSev severity, const string &message) |
void | x_OnSi2csiRecord (vector< CSI2CSIRecord > &&records) |
void | x_OnSi2csiError (CRequestStatus::ECode status, int code, EDiagSev severity, const string &message) |
Public Member Functions inherited from CPSGS_CassProcessorBase | |
CPSGS_CassProcessorBase () | |
CPSGS_CassProcessorBase (shared_ptr< CPSGS_Request > request, shared_ptr< CPSGS_Reply > reply, TProcessorPriority priority) | |
virtual | ~CPSGS_CassProcessorBase () |
virtual void | Cancel (void) override |
The infrastructure request to cancel processing. More... | |
void | SignalFinishProcessing (void) |
void | UnlockWaitingProcessor (void) |
void | CallOnData (void) |
string | GetVerboseFetches (void) const |
void | EnforceWait (void) const |
Public Member Functions inherited from IPSGS_Processor | |
IPSGS_Processor () | |
virtual | ~IPSGS_Processor () |
virtual bool | CanProcess (shared_ptr< CPSGS_Request > request, shared_ptr< CPSGS_Reply > reply) const |
Tells if processor can process the given request. More... | |
virtual vector< string > | WhatCanProcess (shared_ptr< CPSGS_Request > request, shared_ptr< CPSGS_Reply > reply) const |
Needs to be implemented only for the ID/get_na requests. More... | |
virtual IPSGS_Processor * | CreateProcessor (shared_ptr< CPSGS_Request > request, shared_ptr< CPSGS_Reply > reply, TProcessorPriority priority) const =0 |
Create processor to fulfil PSG request using the data source. More... | |
virtual void | Process (void)=0 |
Main processing function. More... | |
virtual string | GetName (void) const =0 |
Tells the processor name (used in logging and tracing) More... | |
virtual string | GetGroupName (void) const =0 |
Tells the processor group name. More... | |
virtual void | ProcessEvent (void) |
Called when an event happened which may require to have some processing. More... | |
shared_ptr< CPSGS_Request > | GetRequest (void) const |
Provides the user request. More... | |
shared_ptr< CPSGS_Reply > | GetReply (void) const |
Provides the reply wrapper. More... | |
TProcessorPriority | GetPriority (void) const |
Provides the processor priority. More... | |
void | PostponeInvoke (CPSGS_UvLoopBinder::TProcessorCB cb, void *user_data) |
The provided callback will be called from the libuv loop assigned to the processor. More... | |
void | SetSocketCallback (int fd, CPSGS_SocketIOCallback::EPSGS_Event event, uint64_t timeout_millisec, void *user_data, CPSGS_SocketIOCallback::TEventCB event_cb, CPSGS_SocketIOCallback::TTimeoutCB timeout_cb, CPSGS_SocketIOCallback::TErrorCB error_cb) |
The provided callbacks will be called from the libuv loop assigned to the processor when the corresponding event appeared on the provided socket. More... | |
void | SetUVThreadId (uv_thread_t uv_thread_id) |
Saves the libuv worker thread id which runs the processor. More... | |
uv_thread_t | GetUVThreadId (void) const |
Provides the libuv thread id which runs the processor. More... | |
bool | IsUVThreadAssigned (void) const |
Tells if a libuv thread id has been assigned to the processor. More... | |
psg_time_point_t | GetProcessInvokeTimestamp (bool &is_valid) const |
Provides the timestamp of when the Process() method was called. More... | |
psg_time_point_t | GetSignalStartTimestamp (bool &is_valid) const |
Provides the timestamp of when the processor called SignalStartProcessing() method. More... | |
psg_time_point_t | GetSignalFinishTimestamp (bool &is_valid) const |
Provides the timestamp of when the processor called SignalFinishProcessing() method. More... | |
void | OnBeforeProcess (void) |
Called just before the virtual Process() method is called. More... | |
EPSGS_StartProcessing | SignalStartProcessing (void) |
A processor should call the method when it decides that it successfully started processing the request. More... | |
void | SignalFinishProcessing (void) |
A processor should call this method when it decides that there is nothing else to be done. More... | |
EPSGS_SeqIdParsingResult | ParseInputSeqId (objects::CSeq_id &seq_id, const string &request_seq_id, int request_seq_id_type, string *err_msg=nullptr) |
Parse seq-id from a string and type representation. More... | |
Private Types | |
enum | EPSGS_ResolveStage { eInit , ePrimaryBioseq , eSecondarySi2csi , eSecondaryAsIs , eFinished , ePostSi2Csi } |
Private Member Functions | |
void | x_Process (void) |
string | x_GetRequestSeqId (void) |
int16_t | x_GetRequestSeqIdType (void) |
string | x_GetSeqIdsToResolveList (void) const |
void | x_PreparePrimaryBioseqInfoQuery (const CBioseqInfoRecord::TAccession &seq_id, CBioseqInfoRecord::TVersion version, CBioseqInfoRecord::TSeqIdType seq_id_type, CBioseqInfoRecord::TGI gi, bool with_seq_id_type) |
void | x_PrepareSecondarySi2csiQuery (void) |
void | x_PrepareSecondaryAsIsSi2csiQuery (void) |
void | x_PrepareSi2csiQuery (const string &secondary_id, int16_t effective_seq_id_type) |
void | x_OnSeqIdAsyncResolutionFinished (SBioseqResolution &&async_bioseq_resolution) |
void | x_SignalStartProcessing (void) |
Definition at line 87 of file async_resolve_base.hpp.
|
private |
Enumerator | |
---|---|
eInit | |
ePrimaryBioseq | |
eSecondarySi2csi | |
eSecondaryAsIs | |
eFinished | |
ePostSi2Csi |
Definition at line 110 of file async_resolve_base.hpp.
CPSGS_AsyncResolveBase::CPSGS_AsyncResolveBase | ( | ) |
Definition at line 111 of file async_resolve_base.cpp.
CPSGS_AsyncResolveBase::CPSGS_AsyncResolveBase | ( | shared_ptr< CPSGS_Request > | request, |
shared_ptr< CPSGS_Reply > | reply, | ||
TContinueResolveCB | continue_resolve_cb, | ||
TSeqIdResolutionFinishedCB | finished_cb, | ||
TSeqIdResolutionErrorCB | error_cb, | ||
TSeqIdResolutionStartProcessingCB | start_processing_cb | ||
) |
Definition at line 115 of file async_resolve_base.cpp.
|
virtual |
Definition at line 134 of file async_resolve_base.cpp.
|
protected |
Definition at line 363 of file async_resolve_base.cpp.
References SBioseqResolution::AdjustAccession(), CanSkipBioseqInfoRetrieval(), CSeq_id_Base::e_Gi, CSeq_id_Base::e_Pdb, CSeq_id_Base::e_Pir, CSeq_id_Base::e_Prf, ePSGS_BioseqCache, SPSGS_RequestBase::ePSGS_DefaultAccSubstitution, SPSGS_RequestBase::ePSGS_LimitedAccSubstitution, ePSGS_LogicError, SPSGS_RequestBase::ePSGS_NeverAccSubstitute, ePSGS_NotRequired, ePSGS_SeqIdsEmpty, GetAccessionSubstitutionOption(), SBioseqResolution::GetBioseqInfo(), CBioseqInfoRecord::GetSeqIdType(), CBioseqInfoRecord::GetVersion(), SBioseqResolution::m_AdjustmentError, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, SBioseqResolution::m_ResolutionResult, PSG_WARNING, and dtl::version.
Referenced by x_OnBioseqInfo(), CPSGS_ResolveBase::x_ResolveSeqId(), CPSGS_AccessionVersionHistoryProcessor::x_SendBioseqInfo(), CPSGS_AnnotProcessor::x_SendBioseqInfo(), CPSGS_GetProcessor::x_SendBioseqInfo(), and CPSGS_ResolveProcessor::x_SendBioseqInfo().
|
protected |
Definition at line 307 of file async_resolve_base.cpp.
References CSeq_id_Base::e_Gi, SPSGS_RequestBase::ePSGS_LimitedAccSubstitution, SPSGS_RequestBase::ePSGS_NeverAccSubstitute, CPSGS_Request::ePSGS_ResolveRequest, SPSGS_ResolveRequest::fPSGS_Gi, CBioseqInfoRecord::GetSeqIdType(), CBioseqInfoRecord::GetVersion(), IPSGS_Processor::m_Request, and NonKeyBioseqInfoFieldsRequested().
Referenced by AdjustBioseqAccession(), CPSGS_ResolveBase::x_OnSeqIdResolveFinished(), x_OnSi2csiRecord(), and CPSGS_ResolveBase::x_ResolveSeqId().
|
protected |
Definition at line 339 of file async_resolve_base.cpp.
References CPSGS_Request::ePSGS_AccessionVersionHistoryRequest, CPSGS_Request::ePSGS_AnnotationRequest, CPSGS_Request::ePSGS_BlobBySeqIdRequest, SPSGS_RequestBase::ePSGS_DefaultAccSubstitution, CPSGS_Request::ePSGS_IPGResolveRequest, SPSGS_RequestBase::ePSGS_NeverAccSubstitute, CPSGS_Request::ePSGS_ResolveRequest, IPSGS_Processor::m_Request, and NCBI_THROW.
Referenced by AdjustBioseqAccession().
|
inlineprotected |
Definition at line 137 of file async_resolve_base.hpp.
References m_AsyncCassResolutionStart.
Referenced by CPSGS_ResolveBase::x_OnSeqIdResolveError(), and CPSGS_ResolveBase::x_RegisterSuccessTiming().
|
protected |
Definition at line 286 of file async_resolve_base.cpp.
References CPSGS_Request::ePSGS_ResolveRequest, SPSGS_ResolveRequest::fPSGS_AllBioseqFields, and IPSGS_Processor::m_Request.
Referenced by NonKeyBioseqInfoFieldsRequested().
|
protected |
Definition at line 1053 of file async_resolve_base.cpp.
References m_SeqIdsToResolve, msg(), and SanitizeInputValue().
Referenced by CPSGS_ResolveBase::x_OnAsyncBioseqInfoResolveError(), x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), CPSGS_ResolveBase::x_OnSeqIdResolveFinished(), x_OnSi2csiError(), and CPSGS_ResolveBase::x_ResolveSeqId().
|
protected |
Definition at line 163 of file async_resolve_base.cpp.
References CTextseq_id_Base::CanGetVersion(), and CTextseq_id_Base::GetVersion().
Referenced by CPSGS_ResolveBase::x_ResolveSeqId(), and CPSGS_ResolveBase::x_ResolveViaComposeOSLTInCache().
|
protected |
Definition at line 1031 of file async_resolve_base.cpp.
References m_CurrentSeqIdToResolve, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, and m_SeqIdsToResolve.
Referenced by CPSGS_ResolveBase::x_OnAsyncBioseqInfoResolveError(), x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), CPSGS_ResolveBase::x_OnSeqIdResolveFinished(), x_OnSi2csiError(), and CPSGS_ResolveBase::x_ResolveSeqId().
|
protected |
Definition at line 295 of file async_resolve_base.cpp.
References SPSGS_ResolveRequest::fPSGS_BioseqKeyFields, and GetBioseqInfoFields().
Referenced by CanSkipBioseqInfoRetrieval().
void CPSGS_AsyncResolveBase::Process | ( | int16_t | effective_version, |
int16_t | effective_seq_id_type, | ||
list< string > && | secondary_id_list, | ||
string && | primary_seq_id, | ||
bool | composed_ok, | ||
SBioseqResolution && | bioseq_resolution | ||
) |
Definition at line 139 of file async_resolve_base.cpp.
References eInit, m_AsyncCassResolutionStart, m_BioseqResolution, m_ComposedOk, m_CurrentFetch, m_EffectiveSeqIdType, m_EffectiveVersion, m_NoSeqIdTypeFetch, m_PrimarySeqId, m_ResolveStage, m_SecondaryIdList, and x_Process().
|
inlineprotected |
Definition at line 142 of file async_resolve_base.hpp.
References m_AsyncCassResolutionStart.
Referenced by CPSGS_ResolveBase::x_OnSeqIdResolveFinished().
|
protected |
Definition at line 234 of file async_resolve_base.cpp.
References m_CurrentSeqIdToResolve, and m_SeqIdsToResolve.
|
protected |
Definition at line 190 of file async_resolve_base.cpp.
References CPSGS_Request::ePSGS_AnnotationRequest, m_CurrentSeqIdToResolve, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, SPSGS_AnnotRequest::m_SeqIds, m_SeqIdsToResolve, PSGSortSeqIds(), x_GetRequestSeqId(), x_GetRequestSeqIdType(), and x_GetSeqIdsToResolveList().
Referenced by CPSGS_ResolveBase::ResolveInputSeqId(), and CPSGS_ResolveBase::ResolveTestInputSeqId().
|
private |
Definition at line 244 of file async_resolve_base.cpp.
References CPSGS_Request::ePSGS_AccessionVersionHistoryRequest, CPSGS_Request::ePSGS_AnnotationRequest, CPSGS_Request::ePSGS_BlobBySeqIdRequest, CPSGS_Request::ePSGS_ResolveRequest, IPSGS_Processor::m_Request, NCBI_THROW, and CPSGS_Request::TypeToString().
Referenced by SetupSeqIdToResolve().
|
private |
Definition at line 265 of file async_resolve_base.cpp.
References CPSGS_Request::ePSGS_AccessionVersionHistoryRequest, CPSGS_Request::ePSGS_AnnotationRequest, CPSGS_Request::ePSGS_BlobBySeqIdRequest, CPSGS_Request::ePSGS_ResolveRequest, IPSGS_Processor::m_Request, NCBI_THROW, and CPSGS_Request::TypeToString().
Referenced by SetupSeqIdToResolve().
|
private |
Definition at line 176 of file async_resolve_base.cpp.
References m_SeqIdsToResolve.
Referenced by SetupSeqIdToResolve().
void CPSGS_AsyncResolveBase::x_OnBioseqInfo | ( | vector< CBioseqInfoRecord > && | records | ) |
Definition at line 646 of file async_resolve_base.cpp.
References AdjustBioseqAccession(), CPSGSResolveErrors::AppendError(), CCassBlobWaiter::ClearError(), CRequestStatus::e502_BadGateway, eDiag_Error, eLookupCassBioseqInfo, eOpStatusFound, eOpStatusNotFound, ePostSi2Csi, ePSGS_BioseqDB, ePSGS_BioseqInfoAccessionAdjustmentError, CPSGSCounters::ePSGS_BioseqInfoFoundMany, CPSGSCounters::ePSGS_BioseqInfoFoundOne, CPSGSCounters::ePSGS_BioseqInfoNotFound, ePSGS_LogicError, ePSGS_NeedLogging, ePSGS_NoBioseqInfoForGiError, ePSGS_SeqIdsEmpty, SPSGS_ResolveRequest::fPSGS_AllBioseqFields, CBioseqInfoRecord::GetAccession(), SBioseqResolution::GetBioseqInfo(), CPSGSResolveErrors::GetCombinedErrorCode(), CPSGSResolveErrors::GetCombinedErrorMessage(), GetCouldNotResolveMessage(), CPubseqGatewayApp::GetInstance(), CCassFetch::GetLoader(), IsINSDCSeqIdType(), SBioseqResolution::m_AdjustmentError, m_BioseqInfoRequestedAccession, m_BioseqInfoRequestedGI, m_BioseqInfoRequestedSeqIdType, m_BioseqInfoRequestedVersion, m_BioseqInfoStart, m_BioseqResolution, m_ContinueResolveCB, m_CurrentFetch, m_ErrorCB, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, SBioseqResolution::m_ResolutionResult, m_ResolveErrors, m_ResolveStage, m_SeqIdsToResolve, MoveToNextSeqId(), msg(), SelectBioseqInfoRecord(), SBioseqResolution::SetBioseqInfo(), CCassFetch::SetReadFinished(), ToJsonString(), x_OnSeqIdAsyncResolutionFinished(), x_PreparePrimaryBioseqInfoQuery(), x_Process(), and x_SignalStartProcessing().
Referenced by x_PreparePrimaryBioseqInfoQuery().
void CPSGS_AsyncResolveBase::x_OnBioseqInfoError | ( | CRequestStatus::ECode | status, |
int | code, | ||
EDiagSev | severity, | ||
const string & | message | ||
) |
Definition at line 906 of file async_resolve_base.cpp.
References CPSGSResolveErrors::AppendError(), CCassBlobWaiter::ClearError(), CPSGSCounters::ePSGS_BioseqInfoError, ePSGS_NeedLogging, CPSGSResolveErrors::GetCombinedErrorCode(), CPSGSResolveErrors::GetCombinedErrorMessage(), GetCouldNotResolveMessage(), CPubseqGatewayApp::GetCounters(), CPubseqGatewayApp::GetInstance(), CCassFetch::GetLoader(), CPSGSCounters::Increment(), CPSGS_CassProcessorBase::IsTimeoutError(), m_ContinueResolveCB, m_CurrentFetch, m_ErrorCB, m_NoSeqIdTypeFetch, m_ResolveErrors, m_SeqIdsToResolve, MoveToNextSeqId(), and CCassFetch::SetReadFinished().
Referenced by x_PreparePrimaryBioseqInfoQuery().
void CPSGS_AsyncResolveBase::x_OnBioseqInfoWithoutSeqIdType | ( | vector< CBioseqInfoRecord > && | records | ) |
Definition at line 789 of file async_resolve_base.cpp.
References CPSGSResolveErrors::AppendError(), CCassBlobWaiter::ClearError(), DecideINSDC(), CRequestStatus::e200_Ok, CRequestStatus::e404_NotFound, CRequestStatus::e500_InternalServerError, CRequestStatus::e502_BadGateway, eDiag_Error, eLookupCassBioseqInfo, eOpStatusFound, eOpStatusNotFound, ePostSi2Csi, ePSGS_BioseqDB, CPSGSCounters::ePSGS_BioseqInfoFoundMany, CPSGSCounters::ePSGS_BioseqInfoFoundOne, CPSGSCounters::ePSGS_BioseqInfoNotFound, ePSGS_NeedLogging, ePSGS_NoBioseqInfoForGiError, ePSGS_ServerLogicError, SPSGS_ResolveRequest::fPSGS_AllBioseqFields, CBioseqInfoRecord::GetAccession(), SBioseqResolution::GetBioseqInfo(), CPSGSResolveErrors::GetCombinedErrorCode(), CPSGSResolveErrors::GetCombinedErrorMessage(), GetCouldNotResolveMessage(), CPubseqGatewayApp::GetInstance(), CCassFetch::GetLoader(), m_BioseqInfoRequestedVersion, m_BioseqInfoStart, m_BioseqResolution, m_ContinueResolveCB, m_ErrorCB, m_NoSeqIdTypeFetch, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, SBioseqResolution::m_ResolutionResult, m_ResolveErrors, m_ResolveStage, m_SeqIdsToResolve, MoveToNextSeqId(), msg(), SBioseqResolution::SetBioseqInfo(), CCassFetch::SetReadFinished(), ToJsonString(), x_OnSeqIdAsyncResolutionFinished(), x_Process(), and x_SignalStartProcessing().
Referenced by x_PreparePrimaryBioseqInfoQuery().
|
private |
Definition at line 1075 of file async_resolve_base.cpp.
References CPSGSResolveErrors::AppendError(), CRequestStatus::e404_NotFound, eDiag_Error, CPSGSCounters::ePSGS_InputSeqIdNotResolved, ePSGS_SkipLogging, ePSGS_UnresolvedSeqId, CPSGSResolveErrors::GetCombinedErrorMessage(), GetCouldNotResolveMessage(), CPubseqGatewayApp::GetInstance(), CPSGSResolveErrors::HasErrors(), m_ContinueResolveCB, m_ErrorCB, m_FinishedCB, m_ResolveErrors, m_SeqIdsToResolve, MoveToNextSeqId(), msg(), and x_SignalStartProcessing().
Referenced by x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSi2csiRecord(), and x_Process().
void CPSGS_AsyncResolveBase::x_OnSi2csiError | ( | CRequestStatus::ECode | status, |
int | code, | ||
EDiagSev | severity, | ||
const string & | message | ||
) |
Definition at line 1004 of file async_resolve_base.cpp.
References CPSGSResolveErrors::AppendError(), CCassBlobWaiter::ClearError(), ePSGS_NeedLogging, CPSGSCounters::ePSGS_Si2csiError, CPSGSResolveErrors::GetCombinedErrorCode(), CPSGSResolveErrors::GetCombinedErrorMessage(), GetCouldNotResolveMessage(), CPubseqGatewayApp::GetCounters(), CPubseqGatewayApp::GetInstance(), CCassFetch::GetLoader(), CPSGSCounters::Increment(), CPSGS_CassProcessorBase::IsTimeoutError(), m_ContinueResolveCB, m_CurrentFetch, m_ErrorCB, m_ResolveErrors, m_SeqIdsToResolve, MoveToNextSeqId(), and CCassFetch::SetReadFinished().
Referenced by x_PrepareSi2csiQuery().
void CPSGS_AsyncResolveBase::x_OnSi2csiRecord | ( | vector< CSI2CSIRecord > && | records | ) |
Definition at line 939 of file async_resolve_base.cpp.
References CanSkipBioseqInfoRetrieval(), CCassBlobWaiter::ClearError(), eLookupCassSi2csi, eOpStatusFound, eOpStatusNotFound, ePostSi2Csi, ePSGS_Si2csiDB, CPSGSCounters::ePSGS_Si2csiFoundMany, CPSGSCounters::ePSGS_Si2csiFoundOne, CPSGSCounters::ePSGS_Si2csiNotFound, GetAccession(), SBioseqResolution::GetBioseqInfo(), CPubseqGatewayApp::GetInstance(), CCassFetch::GetLoader(), m_BioseqResolution, m_CurrentFetch, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, SBioseqResolution::m_ResolutionResult, m_ResolveStage, m_Si2csiStart, msg(), CBioseqInfoRecord::SetAccession(), SBioseqResolution::SetBioseqInfo(), CBioseqInfoRecord::SetGI(), CCassFetch::SetReadFinished(), CBioseqInfoRecord::SetSeqIdType(), CBioseqInfoRecord::SetVersion(), ToJsonString(), x_OnSeqIdAsyncResolutionFinished(), x_Process(), and x_SignalStartProcessing().
Referenced by x_PrepareSi2csiQuery().
|
private |
Definition at line 504 of file async_resolve_base.cpp.
References CPubseqGatewayApp::GetBioseqKeyspace(), CPubseqGatewayApp::GetInstance(), m_BioseqInfoRequestedAccession, m_BioseqInfoRequestedGI, m_BioseqInfoRequestedSeqIdType, m_BioseqInfoRequestedVersion, m_BioseqInfoStart, m_BioseqResolution, SBioseqResolution::m_CassQueryCount, m_CurrentFetch, CPSGS_CassProcessorBase::m_FetchDetails, m_NoSeqIdTypeFetch, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, CBioseqInfoFetchRequest::SetAccession(), CCassBioseqInfoTaskFetch::SetConsumeCallback(), CCassBioseqInfoTaskFetch::SetDataReadyCB(), CCassBlobWaiter::SetErrorCB(), CBioseqInfoFetchRequest::SetGI(), CBioseqInfoFetchRequest::SetSeqIdType(), CBioseqInfoFetchRequest::SetVersion(), StripTrailingVerticalBars(), ToJsonString(), dtl::version, CCassBlobWaiter::Wait(), x_OnBioseqInfo(), x_OnBioseqInfoError(), and x_OnBioseqInfoWithoutSeqIdType().
Referenced by x_OnBioseqInfo(), and x_Process().
|
private |
Definition at line 626 of file async_resolve_base.cpp.
References m_CurrentSeqIdToResolve, m_EffectiveSeqIdType, m_PrimarySeqId, NStr::ToUpper(), x_PrepareSi2csiQuery(), and x_Process().
Referenced by x_Process().
|
private |
Definition at line 617 of file async_resolve_base.cpp.
References m_EffectiveSeqIdType, m_SecondaryIdList, m_SecondaryIndex, next(), and x_PrepareSi2csiQuery().
Referenced by x_Process().
|
private |
Definition at line 576 of file async_resolve_base.cpp.
References CPubseqGatewayApp::GetBioseqKeyspace(), CPubseqGatewayApp::GetInstance(), m_BioseqResolution, SBioseqResolution::m_CassQueryCount, m_CurrentFetch, CPSGS_CassProcessorBase::m_FetchDetails, IPSGS_Processor::m_Reply, IPSGS_Processor::m_Request, m_Si2csiStart, CCassSI2CSITaskFetch::SetConsumeCallback(), CCassSI2CSITaskFetch::SetDataReadyCB(), CCassBlobWaiter::SetErrorCB(), CSi2CsiFetchRequest::SetSecSeqId(), CSi2CsiFetchRequest::SetSecSeqIdType(), StripTrailingVerticalBars(), ToJsonString(), CCassBlobWaiter::Wait(), x_OnSi2csiError(), and x_OnSi2csiRecord().
Referenced by x_PrepareSecondaryAsIsSi2csiQuery(), and x_PrepareSecondarySi2csiQuery().
|
private |
Definition at line 435 of file async_resolve_base.cpp.
References eFinished, eInit, ePostSi2Csi, ePrimaryBioseq, ePSGS_NotResolved, eSecondaryAsIs, eSecondarySi2csi, CBioseqInfoRecord::GetAccession(), SBioseqResolution::GetBioseqInfo(), CBioseqInfoRecord::GetGI(), CBioseqInfoRecord::GetSeqIdType(), CBioseqInfoRecord::GetVersion(), m_BioseqResolution, m_ComposedOk, m_EffectiveSeqIdType, m_EffectiveVersion, m_PrimarySeqId, SBioseqResolution::m_ResolutionResult, m_ResolveStage, m_SecondaryIdList, m_SecondaryIndex, CBioseqInfoRecord::Reset(), x_OnSeqIdAsyncResolutionFinished(), x_PreparePrimaryBioseqInfoQuery(), x_PrepareSecondaryAsIsSi2csiQuery(), and x_PrepareSecondarySi2csiQuery().
Referenced by Process(), x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSi2csiRecord(), and x_PrepareSecondaryAsIsSi2csiQuery().
|
private |
Definition at line 1114 of file async_resolve_base.cpp.
References m_StartProcessingCalled, and m_StartProcessingCB.
Referenced by x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), and x_OnSi2csiRecord().
|
protected |
Definition at line 207 of file async_resolve_base.hpp.
Referenced by GetAsyncResolutionStartTimestamp(), Process(), and SetAsyncResolutionStartTimestamp().
|
protected |
Definition at line 200 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), and x_PreparePrimaryBioseqInfoQuery().
|
protected |
Definition at line 203 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), and x_PreparePrimaryBioseqInfoQuery().
|
protected |
Definition at line 202 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), and x_PreparePrimaryBioseqInfoQuery().
|
protected |
Definition at line 201 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), and x_PreparePrimaryBioseqInfoQuery().
|
protected |
Definition at line 205 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), and x_PreparePrimaryBioseqInfoQuery().
|
protected |
Definition at line 195 of file async_resolve_base.hpp.
Referenced by Process(), x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSi2csiRecord(), x_PreparePrimaryBioseqInfoQuery(), x_PrepareSi2csiQuery(), and x_Process().
|
protected |
Definition at line 189 of file async_resolve_base.hpp.
Referenced by Process(), and x_Process().
|
protected |
Definition at line 183 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), and x_OnSi2csiError().
|
protected |
Definition at line 197 of file async_resolve_base.hpp.
Referenced by Process(), x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnSi2csiError(), x_OnSi2csiRecord(), x_PreparePrimaryBioseqInfoQuery(), and x_PrepareSi2csiQuery().
|
protected |
Definition at line 216 of file async_resolve_base.hpp.
Referenced by MoveToNextSeqId(), CPSGS_ResolveBase::ResolveTestInputSeqId(), SetupSeqIdToResolve(), CPSGS_ResolveBase::x_ComposeOSLT(), CPSGS_ResolveBase::x_OnSeqIdResolveFinished(), x_PrepareSecondaryAsIsSi2csiQuery(), CPSGS_ResolveBase::x_ResolveAsIsInCache(), CPSGS_ResolveBase::x_ResolveSeqId(), and CPSGS_ResolveBase::x_ResolveViaComposeOSLTInCache().
|
protected |
Definition at line 192 of file async_resolve_base.hpp.
Referenced by Process(), x_PrepareSecondaryAsIsSi2csiQuery(), x_PrepareSecondarySi2csiQuery(), and x_Process().
|
protected |
Definition at line 191 of file async_resolve_base.hpp.
Referenced by Process(), and x_Process().
|
protected |
Definition at line 185 of file async_resolve_base.hpp.
Referenced by x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), and x_OnSi2csiError().
|
protected |
Definition at line 184 of file async_resolve_base.hpp.
Referenced by x_OnSeqIdAsyncResolutionFinished().
|
protected |
Definition at line 198 of file async_resolve_base.hpp.
Referenced by Process(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), and x_PreparePrimaryBioseqInfoQuery().
|
protected |
Definition at line 190 of file async_resolve_base.hpp.
Referenced by Process(), x_PrepareSecondaryAsIsSi2csiQuery(), and x_Process().
|
protected |
Definition at line 217 of file async_resolve_base.hpp.
Referenced by CPSGS_ResolveBase::x_OnAsyncBioseqInfoResolveError(), x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), CPSGS_ResolveBase::x_OnSeqIdResolveFinished(), x_OnSi2csiError(), and CPSGS_ResolveBase::x_ResolveSeqId().
|
protected |
Definition at line 188 of file async_resolve_base.hpp.
Referenced by Process(), x_OnBioseqInfo(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSi2csiRecord(), and x_Process().
|
protected |
Definition at line 194 of file async_resolve_base.hpp.
Referenced by Process(), x_PrepareSecondarySi2csiQuery(), and x_Process().
|
protected |
Definition at line 193 of file async_resolve_base.hpp.
Referenced by x_PrepareSecondarySi2csiQuery(), and x_Process().
|
protected |
Definition at line 215 of file async_resolve_base.hpp.
Referenced by GetCouldNotResolveMessage(), MoveToNextSeqId(), SetupSeqIdToResolve(), x_GetSeqIdsToResolveList(), CPSGS_ResolveBase::x_OnAsyncBioseqInfoResolveError(), x_OnBioseqInfo(), x_OnBioseqInfoError(), x_OnBioseqInfoWithoutSeqIdType(), x_OnSeqIdAsyncResolutionFinished(), CPSGS_ResolveBase::x_OnSeqIdResolveFinished(), x_OnSi2csiError(), and CPSGS_ResolveBase::x_ResolveSeqId().
|
protected |
Definition at line 206 of file async_resolve_base.hpp.
Referenced by x_OnSi2csiRecord(), and x_PrepareSi2csiQuery().
|
protected |
Definition at line 209 of file async_resolve_base.hpp.
Referenced by x_SignalStartProcessing().
|
protected |
Definition at line 186 of file async_resolve_base.hpp.
Referenced by x_SignalStartProcessing().