1 #ifndef NETSCHEDULE_CLIENTS__HPP
2 #define NETSCHEDULE_CLIENTS__HPP
77 void Update(
unsigned int peer_addr,
169 const string & claimed_type)
const;
240 bool use_preferred)
const;
242 const vector<TJobStatus> & match_states);
355 if (new_session ==
"")
367 unsigned short old_port =
data.m_WaitPort;
384 {
m_Type |= type_to_append; }
402 if (cmd_group ==
eGet)
489 {
if (cmd_group ==
eGet)
511 string Print(
const string & node_name,
void SetPassedChecks(TNSCommandChecks check)
string GetScope(void) const
void SetClientHost(const string &client_host)
void SetScope(const string &scope)
EClaimedClientType GetType(void) const
void ResetPassedCheck(void)
const string & GetClientName(void) const
unsigned int GetID(void) const
string x_NormalizeNodeOrSession(const string &val, const string &key)
bool IsComplete(void) const
const string & GetProgramName(void) const
void SetClientName(const string &client_name)
const string & GetSession(void) const
void SetID(unsigned int id)
const string & GetNode(void) const
void CheckAccess(TNSCommandChecks cmd_reqs, CNetScheduleServer *server, const string &cmd)
TNSCommandChecks GetPassedChecks(void) const
unsigned short m_ControlPort
EClaimedClientType m_ClientType
void Update(unsigned int peer_addr, const TNSProtoParams ¶ms)
void SetClientType(EClaimedClientType new_type)
const string & GetClientHost(void) const
void SetControlPort(unsigned short port)
unsigned int GetAddress(void) const
EClaimedClientType x_ConvertToClaimedType(const string &claimed_type) const
TNSCommandChecks m_PassedChecks
string GetVirtualScope(void) const
unsigned short GetControlPort(void) const
string GetLastScope(void) const
CNSClient & operator=(CNSClient &&)=default
bool GetAffinityReset(ECommandGroup cmd_group) const
size_t m_NumberOfSockErrors
void SetID(unsigned int id)
void SetWaitAffinities(const TNSBitVector &aff, ECommandGroup cmd_group)
bool MoveJobToBlacklist(unsigned int job_id, ECommandGroup cmd_group)
void UnregisterJob(unsigned int job_id, ECommandGroup cmd_group)
string Print(const string &node_name, const CQueue *queue, const CNSAffinityRegistry &aff_registry, const set< string > &gc_clients, const set< string > &read_gc_clients, bool verbose) const
ENSClientState GetState(void) const
bool ClearPreferredAffinities(ECommandGroup cmd_group)
TNSBitVector GetWaitAffinities(ECommandGroup cmd_group) const
void SetWaitPort(unsigned short port, ECommandGroup cmd_group)
unsigned int GetType(void) const
void ClearJobs(ECommandGroup cmd_group)
void RegisterSubmittedJobs(size_t count)
CNSPreciseTime m_SessionStartTime
void AddPreferredAffinities(const TNSBitVector &aff, ECommandGroup cmd_group)
void SubtractBlacklistedJobs(ECommandGroup cmd_group, TNSBitVector &bv) const
TNSBitVector GetJobs(ECommandGroup cmd_group) const
void SetAffinityReset(bool value, ECommandGroup cmd_group)
string GetSession(void) const
int SetClientData(const string &data, int data_version)
void RegisterJob(unsigned int job_id, ECommandGroup cmd_group)
CNSPreciseTime m_LastAccess
unsigned int GetPeerAddress(void) const
EClaimedClientType m_ClaimedType
void SetState(ENSClientState new_state)
void RegisterBlacklistedJob(unsigned int job_id, ECommandGroup cmd_group)
unsigned int GetID(void) const
CNSPreciseTime m_RegistrationTime
CNSClient(const CNSClient &)=default
unsigned short m_ControlPort
void ClearWaitAffinities(ECommandGroup cmd_group)
unsigned short GetWaitPort(ECommandGroup cmd_group) const
void CancelWaiting(ECommandGroup cmd_group)
bool AddPreferredAffinity(unsigned int aff, ECommandGroup cmd_group)
unsigned short GetAndResetWaitPort(ECommandGroup cmd_group)
bool HasWaitAffinities(ECommandGroup cmd_group) const
void RemovePreferredAffinity(unsigned int aff, ECommandGroup cmd_group)
CNSClient(CNSClient &&)=default
void AddBlacklistedJobs(ECommandGroup cmd_group, TNSBitVector &bv) const
CNSPreciseTime GetLastAccess(void) const
string GetVirtualScope(const string &client_node) const
CNSClient & operator=(const CNSClient &)=default
void SetClaimedType(EClaimedClientType new_type)
CNSPreciseTime m_SessionResetTime
void Touch(const CNSClientId &client_id)
void GCBlacklistedJobs(const CJobStatusTracker &tracker, ECommandGroup cmd_group)
string x_TypeAsString(void) const
bool IsRequestedAffinity(const TNSBitVector &aff, bool use_preferred, ECommandGroup cmd_group) const
bool HasPreferredAffinities(ECommandGroup cmd_group) const
void SetLastScope(const string &scope)
void SetSession(const string &new_session)
size_t m_NumberOfSubmitted
SRemoteNodeData m_ReaderData
void AppendType(unsigned int type_to_append)
void SetPreferredAffinities(const TNSBitVector &aff, ECommandGroup cmd_group)
TNSBitVector GetPreferredAffinities(ECommandGroup cmd_group) const
void RemovePreferredAffinities(const TNSBitVector &aff, ECommandGroup cmd_group)
void RegisterSocketWriteError(void)
string x_StateAsString(void) const
static CNSPreciseTime Current(void)
NetScheduler threaded server.
Bitvector Bit-vector container with runtime compression of bits.
bool any() const noexcept
Returns true if any bits in this bitset are set, and otherwise returns false.
bool set_bit(size_type n, bool val=true)
Sets bit n.
void clear(const size_type *ids, size_type ids_size, bm::sort_order so=bm::BM_UNKNOWN)
clear list of bits in this bitset
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
unsigned int
A callback function used to compare two keys in a database.
const struct ncbi::grid::netcache::search::fields::KEY key
const GenericPointer< typename T::ValueType > T2 value
unsigned int TNSCommandChecks
void AddToBlacklist(unsigned int job_id, const CNSPreciseTime &last_access)
void x_BlacklistedOp(void) const
TNSBitVector m_WaitAffinities
void AddPreferredAffinities(const TNSBitVector &aff)
map< unsigned int, CNSPreciseTime > m_BlacklistLimits
CNSPreciseTime * m_BlacklistTimeout
void x_UpdateBlacklist(void) const
void GCBlacklist(const CJobStatusTracker &tracker, const vector< TJobStatus > &match_states)
void SetWaitAffinities(const TNSBitVector &aff)
void SubtractBlacklistedJobs(TNSBitVector &bv) const
unsigned short m_WaitPort
size_t m_WaitAffinitiesOpCount
void AddBlacklistedJobs(TNSBitVector &bv) const
TNSBitVector m_BlacklistedJobs
const TNSBitVector & GetBlacklistedJobsRef(void) const
TNSBitVector m_PrefAffinities
void UpdateBlacklist(unsigned int job_id) const
void x_JobsOp(void) const
bool ClearPreferredAffinities(void)
void RemovePreferredAffinities(const TNSBitVector &aff)
void RegisterJob(unsigned int job_id)
void x_PrefAffinitiesOp(void) const
void x_ClearPreferredAffinities(void)
void ClearWaitAffinities(void)
size_t m_BlacklistedJobsOpCount
void RemovePreferredAffinity(unsigned int aff)
void x_WaitAffinitiesOp(void) const
bool AddPreferredAffinity(unsigned int aff)
size_t m_PrefAffinitiesOpCount
bool MoveJobToBlacklist(unsigned int job_id)
void SetPreferredAffinities(const TNSBitVector &aff)
string GetBlacklistLimit(unsigned int job_id) const
bool IsRequestedAffinity(const TNSBitVector &aff, bool use_preferred) const
void UnregisterGivenJob(unsigned int job_id)