CNSRequestContextFactory;
85 virtual void OnOpen(
void);
91 virtual void OnError(
const string& err_message);
139 size_trequired_size);
142 size_twritten_bytes,
238 const string&
msg,
const string& suffix);
250 booladd_security_token);
256 const string& client_sid,
257 const string& phid)
const;
269 constvector<TJobStatus> & src,
270vector<string> & warnings)
const;
NetSchedule internal exception.
ConnectionHandler for NetScheduler.
void x_PrintGetJobResponse(const CQueue *q, const CJob &job, bool add_security_token)
void x_ProcessQueueInfo(CQueue *)
void x_ProcessCancelWaitGet(CQueue *)
void x_ProcessGetParam(CQueue *)
virtual void OnOpen(void)
Runs in response to an external event [asynchronous].
CNetScheduleHandler(CNetScheduleServer *server)
void x_ProcessFastStatusW(CQueue *)
void x_ProcessCancelWaitRead(CQueue *)
void x_ProcessReloadConfig(CQueue *)
void x_ProcessReadRollback(CQueue *)
CRef< CQueue > GetQueue(void)
void x_ProcessGetMessage(CQueue *)
EHTTPStatus
Statuses of commands to be set in diagnostics' request context Additional statuses can be taken from ...
@ eStatus_OK
Command is ok and execution is good.
@ eStatus_SubmitRefused
In refuse submits mode and received SUBMIT.
@ eStatus_SocketIOError
Error writing to socket.
@ eStatus_NotImplemented
Command is not implemented.
@ eStatus_HTTPProbe
Routine test from systems.
@ eStatus_Inactive
Connection was closed due to inactivity timeout.
@ eStatus_BadAuth
Bad authorization token.
@ eStatus_ServerError
Internal server error.
@ eStatus_NotFound
Job is not found.
@ eStatus_ShuttingDown
Server is shutting down.
@ eStatus_BadRequest
Command is incorrect.
@ eStatus_InvalidJobStatus
Invalid job status.
void x_OnCmdParserError(bool need_request_start, const string &msg, const string &suffix)
virtual void OnMessage(BUF buffer)
void x_ProcessPutFailure(CQueue *)
void x_ProcessDropQueue(CQueue *)
string x_GetConnRef(void) const
void x_HandleSocketErrorOnResponse(const string &msg, EIO_Status write_result, size_t written_bytes, const CNSPreciseTime &timing)
void x_ProcessQuitSession(CQueue *)
void x_ProcessMsgAuth(BUF buffer)
bool x_NeedToGeneratePHIDAndSID(FProcessor processor) const
void x_CheckAuthorizationToken(void)
void x_ProcessChangeAffinity(CQueue *)
TProtoParser m_BatchEndParser
void x_ProcessCancel(CQueue *)
void x_ProcessSetClientData(CQueue *)
void x_ProcessDump(CQueue *)
void x_ProcessReading(CQueue *)
void x_ProcessQList(CQueue *)
EIO_Status x_PrepareWriteBuffer(const string &msg, size_t msg_size, size_t required_size)
void x_FinalizeReadCommand(const string &command, TJobStatus status, const CJob &job)
CNSRollbackInterface * m_RollbackAction
bool x_CanBeWithoutQueue(FProcessor processor) const
static void x_MakeSureSingleEOR(string &message)
void x_ProcessMsgBatchSubmit(BUF buffer)
void x_ProcessRefuseSubmits(CQueue *)
TProtoParser m_BatchHeaderParser
static SCommandMap sm_BatchHeaderMap[]
void(CNetScheduleHandler::* FProcessor)(CQueue *)
void x_ProcessMsgBatchHeader(BUF buffer)
CStopWatch m_BatchStopWatch
void x_PrintCmdRequestStop(void)
string x_GetServerSection(void) const
void x_ProcessSubmitBatch(CQueue *)
void x_ProcessReadFailed(CQueue *)
void x_SetConnRequestStatus(unsigned int status)
void x_ProcessCancelQueue(CQueue *)
void x_CmdObsolete(CQueue *)
void x_ProcessGetConfiguration(CQueue *)
bool x_NeedCmdLogging(void) const
virtual void OnWrite(void)
The client is ready to receive data.
void x_ProcessJobDelayExpiration(CQueue *)
void x_ProcessGetConf(CQueue *)
CWeakRef< CQueue > m_QueueRef
void x_ClearRollbackAction(void)
void x_ProcessRedo(CQueue *)
unsigned int x_GetPeerAddress(void)
void x_ProcessConfirm(CQueue *)
void x_SetCmdRequestStatus(unsigned int status)
void x_ProcessDeleteDynamicQueue(CQueue *)
EIO_Status x_WriteMessage(const string &msg)
CNetServProtoParser< SCommandExtra > TProtoParser
void x_UpdateClientPassedChecks(CQueue *q)
virtual void OnClose(IServer_ConnectionHandler::EClosePeer peer)
The connection has closed (with information on type of closing)
void x_ProcessAckAlert(CQueue *)
TProtoParser m_SingleCmdParser
void x_ProcessPause(CQueue *)
void x_ExecuteRollbackAction(CQueue *q)
void x_ProcessJobExchange(CQueue *)
void x_ProcessClearWorkerNode(CQueue *)
void x_ProcessCreateDynamicQueue(CQueue *)
virtual void OnTimeout(void)
Runs when a client has been idle for too long, prior to closing the connection [synchronous].
void x_CheckReadParameters(void)
string x_GetLogSection(void) const
void x_LogCommandWithJob(const CJob &job) const
void x_CmdNotImplemented(CQueue *)
void x_CreateConnContext(void)
void x_ProcessActiveCount(CQueue *)
void x_ProcessStatusSnapshot(CQueue *)
void x_ProcessMsgBatchJob(BUF buffer)
string x_GetStoredSectionValues(const string §ion_name, const map< string, string > &values) const
void x_SetRequestContext(void)
CRef< CRequestContext > m_CmdContext
void x_ProcessVersion(CQueue *)
void x_ProcessMsgRequest(BUF buffer)
void x_ProcessGetJob(CQueue *)
void x_SetQuickAcknowledge(void)
string x_GetDiagSection(void) const
bool m_ClientIdentificationPrinted
void x_ProcessSetAffinity(CQueue *)
CNSPreciseTime m_BatchSubmTimeout
void(CNetScheduleHandler::* m_ProcessMessage)(BUF buffer)
static SCommandMap sm_BatchEndMap[]
void x_ProcessPut(CQueue *)
CRef< CRequestContext > m_ConnContext
void x_CheckGetParameters(void)
void x_ProcessPutMessage(CQueue *)
void x_StatisticsNew(CQueue *q, const string &what, const CNSPreciseTime &curr)
void x_ProcessResume(CQueue *)
void x_CheckPortAndTimeout(void)
void x_ProcessJobDelayReadExpiration(CQueue *)
vector< TJobStatus > x_RemoveDuplicateStatuses(const vector< TJobStatus > &src, vector< string > &warnings) const
void x_ProcessSetQueue(CQueue *)
void x_ProcessMsgQueue(BUF buffer)
void x_CheckQInf2Parameters(void)
SNSProtoCmdDef< SCommandExtra > SCommandMap
SNSProtoParsedCmd< SCommandExtra > SParsedCmd
void x_ProcessSetScope(CQueue *)
void x_ProcessReread(CQueue *)
CNetScheduleServer * m_Server
virtual void OnOverflow(EOverflowReason reason)
Runs when there are insufficient resources to queue a connection, prior to closing it.
virtual void OnError(const string &err_message)
Runs when a socket error is detected.
void x_ProcessFastStatusS(CQueue *)
void x_ProcessSubmit(CQueue *)
static SCommandMap sm_CommandMap[]
void x_ProcessReturn(CQueue *)
void x_ProcessBatchSequenceEnd(CQueue *)
void x_CheckNonAnonymousClient(const string &message)
void x_ProcessHealth(CQueue *)
void x_ProcessListenJob(CQueue *)
void x_ProcessShutdown(CQueue *)
bool x_WorkerNodeCommand(void) const
void x_ProcessReschedule(CQueue *)
void x_PrintCmdRequestStart(const SParsedCmd &cmd)
void x_ProcessStatistics(CQueue *)
void x_ProcessBatchStart(CQueue *)
vector< pair< CJob, string > > m_BatchJobs
SNSCommandArguments m_CommandArguments
void x_ProcessStatus(CQueue *)
NetScheduler threaded server.
~CRequestContextResetter()
CRequestContextResetter()
CTempString implements a light-weight string on top of a storage buffer whose lifetime management is ...
IServer_LineMessageHandler::
void SetRequestStatus(int status)
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
EJobStatus
Job status codes.
bool NotNull(void) const THROWS_NONE
Check if pointer is not null â same effect as NotEmpty().
TRefType Lock(void) const
Lock the object and return reference to it.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
EClosePeer
Type of connection closing.
EOverflowReason
Error codes for OnOverflow method in IServer_ConnectionHandler.
Defines: CTimeFormat - storage class for time format.
NetSchedule client specs.
unsigned int TNSCommandChecks
const size_t kInitialMessageBufferSize
const size_t kMessageBufferIncrement
Defines CRequestContext class for NCBI C++ diagnostic API.
Framework to create multithreaded network servers with thread-per-request scheduling.
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
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