NCBI C++ ToolKit
|
Search Toolkit Book for CID2Client
#include <objects/id2/id2_client.hpp>
Public Types | |
typedef vector< CRef< TReply > > | TReplies |
Public Types inherited from CID2Client_Base | |
typedef CID2_Request | TRequest |
typedef CID2_Reply | TReply |
typedef CID2_Request::C_Request | TRequestChoice |
typedef CID2_Reply::C_Reply | TReplyChoice |
Public Types inherited from CObject | |
enum | EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern } |
Control filling of newly allocated memory. More... | |
typedef CObjectCounterLocker | TLockerType |
Default locker type for CRef. More... | |
typedef atomic< Uint8 > | TCounter |
Counter type is CAtomiCounter. More... | |
typedef Uint8 | TCount |
Alias for value type of counter. More... | |
Public Member Functions | |
CID2Client (void) | |
~CID2Client (void) | |
const TReplies & | GetAllReplies (void) |
void | JustAsk (const CID2_Request_Packet &packet) |
void | JustAsk (const CID2_Request &request) |
void | JustFetch (CID2_Reply &reply) |
Public Member Functions inherited from CID2Client_Base | |
CID2Client_Base (void) | |
virtual | ~CID2Client_Base (void) |
virtual void | Ask (const TRequest &request, TReply &reply) |
virtual void | Ask (const TRequest &request, TReply &reply, TReplyChoice::E_Choice wanted) |
virtual const TRequest & | GetDefaultRequest (void) const |
virtual TRequest & | SetDefaultRequest (void) |
virtual void | SetDefaultRequest (const TRequest &request) |
virtual void | Ask (const TRequestChoice &req, TReply &reply) |
virtual void | Ask (const TRequestChoice &req, TReply &reply, TReplyChoice::E_Choice wanted) |
virtual void | AskInit (TReply *reply=0) |
virtual CRef< CID2_Reply_Get_Package > | AskGet_packages (const CID2_Request_Get_Packages &req, TReply *reply=0) |
virtual CRef< CID2_Reply_Get_Seq_id > | AskGet_seq_id (const CID2_Request_Get_Seq_id &req, TReply *reply=0) |
virtual CRef< CID2_Reply_Get_Blob_Id > | AskGet_blob_id (const CID2_Request_Get_Blob_Id &req, TReply *reply=0) |
virtual CRef< CID2_Reply_Get_Blob > | AskGet_blob_info (const CID2_Request_Get_Blob_Info &req, TReply *reply=0) |
virtual CRef< CID2_Reply_ReGet_Blob > | AskReget_blob (const CID2_Request_ReGet_Blob &req, TReply *reply=0) |
virtual CRef< CID2S_Reply_Get_Chunk > | AskGet_chunks (const CID2S_Request_Get_Chunks &req, TReply *reply=0) |
Public Member Functions inherited from CRPCClient< CID2_Request, CID2_Reply > | |
CRPCClient (const string &service=kEmptyStr) | |
CRPCClient (const string &service, ESerialDataFormat format) | |
CRPCClient (const string &service, ESerialDataFormat format, unsigned int try_limit) | |
virtual | ~CRPCClient (void) |
EIO_Status | SetTimeout (const STimeout *timeout, EIO_Event direction=eIO_ReadWrite) |
const STimeout * | GetTimeout (EIO_Event direction=eIO_Read) const |
EIO_Status | AsyncConnect (void *handle_buf, size_t handle_size) |
Public Member Functions inherited from CObject | |
CObject (void) | |
Constructor. More... | |
CObject (const CObject &src) | |
Copy constructor. More... | |
virtual | ~CObject (void) |
Destructor. More... | |
CObject & | operator= (const CObject &src) THROWS_NONE |
Assignment operator. More... | |
bool | CanBeDeleted (void) const THROWS_NONE |
Check if object can be deleted. More... | |
bool | IsAllocatedInPool (void) const THROWS_NONE |
Check if object is allocated in memory pool (not system heap) More... | |
bool | Referenced (void) const THROWS_NONE |
Check if object is referenced. More... | |
bool | ReferencedOnlyOnce (void) const THROWS_NONE |
Check if object is referenced only once. More... | |
void | AddReference (void) const |
Add reference to object. More... | |
void | RemoveReference (void) const |
Remove reference to object. More... | |
void | ReleaseReference (void) const |
Remove reference without deleting object. More... | |
virtual void | DoNotDeleteThisObject (void) |
Mark this object as not allocated in heap – do not delete this object. More... | |
virtual void | DoDeleteThisObject (void) |
Mark this object as allocated in heap – object can be deleted. More... | |
void * | operator new (size_t size) |
Define new operator for memory allocation. More... | |
void * | operator new[] (size_t size) |
Define new[] operator for 'array' memory allocation. More... | |
void | operator delete (void *ptr) |
Define delete operator for memory deallocation. More... | |
void | operator delete[] (void *ptr) |
Define delete[] operator for memory deallocation. More... | |
void * | operator new (size_t size, void *place) |
Define new operator. More... | |
void | operator delete (void *ptr, void *place) |
Define delete operator. More... | |
void * | operator new (size_t size, CObjectMemoryPool *place) |
Define new operator using memory pool. More... | |
void | operator delete (void *ptr, CObjectMemoryPool *place) |
Define delete operator. More... | |
virtual void | DebugDump (CDebugDumpContext ddc, unsigned int depth) const |
Define method for dumping debug information. More... | |
Public Member Functions inherited from CDebugDumpable | |
CDebugDumpable (void) | |
virtual | ~CDebugDumpable (void) |
void | DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const |
void | DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const |
void | DumpToConsole (void) const |
Public Member Functions inherited from CRPCClient_Base | |
CRPCClient_Base (const string &service, ESerialDataFormat format) | |
CRPCClient_Base (const string &service, ESerialDataFormat format, unsigned int try_limit) | |
virtual | ~CRPCClient_Base (void) |
void | Connect (void) |
void | Disconnect (void) |
void | Reset (void) |
void | SetArgs (const string &args) |
Set additional connection arguments. More... | |
void | SetArgs (const CUrlArgs &args) |
const string & | GetArgs (void) const |
Get additional connection arguments. More... | |
const string & | GetService (void) const |
void | SetService (const string &service) |
ESerialDataFormat | GetFormat (void) const |
void | SetFormat (ESerialDataFormat fmt) |
unsigned int | GetTryLimit (void) const |
Get number of request attempts. More... | |
void | SetTryLimit (unsigned int n) |
unsigned int | GetRetryLimit (void) const |
void | SetRetryLimit (unsigned int n) |
const CTimeSpan | GetRetryDelay (void) const |
Get retry delay. More... | |
void | SetRetryDelay (const CTimeSpan &ts) |
void | SetCanceledCallback (const ICanceled *canceled) |
Set request canceler. More... | |
bool | IsCanceled (void) const |
Protected Member Functions | |
virtual void | WriteRequest (CObjectOStream &out, const TRequest &request) |
virtual void | ReadReply (CObjectIStream &in, TReply &reply) |
Protected Member Functions inherited from CID2Client_Base | |
void | x_Connect (void) |
These run with m_Mutex already acquired. More... | |
Protected Member Functions inherited from CRPCClient< CID2_Request, CID2_Reply > | |
virtual string | GetAffinity (const CID2_Request &) const |
virtual void | x_WriteRequest (CObjectOStream &out, const CSerialObject &request) override |
virtual void | x_ReadReply (CObjectIStream &in, CSerialObject &reply) override |
virtual string | x_GetAffinity (const CSerialObject &request) const override |
void | x_ConnectURL (const string &url) |
Connect to a URL. More... | |
Protected Member Functions inherited from CObject | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Protected Member Functions inherited from CRPCClient_Base | |
void | SetAffinity (const string &affinity) |
virtual void | x_Disconnect (void) |
Disconnect as cleanly as possible. More... | |
void | x_SetStream (CNcbiIostream *stream) |
void | x_Ask (const CSerialObject &request, CSerialObject &reply) |
virtual bool | x_ShouldRetry (unsigned int tries) |
CTimeSpan | x_GetRetryDelay (double max_delay) const |
Protected Member Functions inherited from CConnIniter | |
CConnIniter (void) | |
Private Types | |
typedef CID2Client_Base | Tparent |
Private Member Functions | |
CID2Client (const CID2Client &value) | |
CID2Client & | operator= (const CID2Client &value) |
Private Attributes | |
TReplies | m_Replies |
Additional Inherited Members | |
Static Public Member Functions inherited from CObject | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (void) |
Define method to throw null pointer exception. More... | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (const type_info &type) |
static EAllocFillMode | GetAllocFillMode (void) |
static void | SetAllocFillMode (EAllocFillMode mode) |
static void | SetAllocFillMode (const string &value) |
Set mode from configuration parameter value. More... | |
Static Public Member Functions inherited from CDebugDumpable | |
static void | EnableDebugDump (bool on) |
Static Public Attributes inherited from CObject | |
static const TCount | eCounterBitsCanBeDeleted = 1 << 0 |
Define possible object states. More... | |
static const TCount | eCounterBitsInPlainHeap = 1 << 1 |
Heap signature was found. More... | |
static const TCount | eCounterBitsPlaceMask |
Mask for 'in heap' state flags. More... | |
static const int | eCounterStep = 1 << 2 |
Skip over the "in heap" bits. More... | |
static const TCount | eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2) |
Minimal value for valid objects (reference counter is zero) Must be a single bit value. More... | |
static const TCount | eCounterStateMask |
Valid object, and object in heap. More... | |
Static Protected Member Functions inherited from CRPCClient< CID2_Request, CID2_Reply > | |
static EHTTP_HeaderParse | sx_ParseHeader (const char *http_header, void *user_data, int server_error) |
static bool | sx_IsSpecial (const STimeout *timeout) |
Static Protected Member Functions inherited from CRPCClient_Base | |
static const char * | GetContentTypeHeader (ESerialDataFormat format) |
Protected Attributes inherited from CRPCClient< CID2_Request, CID2_Reply > | |
const STimeout * | m_Timeout |
Cloned if not special. More... | |
Protected Attributes inherited from CRPCClient_Base | |
string | m_Service |
Used by default Connect(). More... | |
string | m_Args |
unique_ptr< CNcbiIostream > | m_Stream |
unique_ptr< CObjectIStream > | m_In |
unique_ptr< CObjectOStream > | m_Out |
string | m_Affinity |
unsigned int | m_TryLimit |
CHttpRetryContext | m_RetryCtx |
CConstIRef< ICanceled > | m_Canceler |
Definition at line 55 of file id2_client.hpp.
|
private |
Definition at line 57 of file id2_client.hpp.
typedef vector< CRef<TReply> > CID2Client::TReplies |
Definition at line 67 of file id2_client.hpp.
|
inline |
Definition at line 100 of file id2_client.hpp.
CID2Client::~CID2Client | ( | void | ) |
Definition at line 51 of file id2_client.cpp.
|
private |
Definition at line 68 of file id2_client.hpp.
References m_Replies.
void CID2Client::JustAsk | ( | const CID2_Request & | request | ) |
Definition at line 65 of file id2_client.cpp.
References CRPCClient_Base::Connect(), CConn_IOStream::Fetch(), kZeroTimeout, CRPCClient_Base::m_Out, and WriteRequest().
void CID2Client::JustAsk | ( | const CID2_Request_Packet & | packet | ) |
Definition at line 56 of file id2_client.cpp.
References CRPCClient_Base::Connect(), CConn_IOStream::Fetch(), and kZeroTimeout.
|
inline |
Definition at line 73 of file id2_client.hpp.
References CRPCClient_Base::m_In, and ReadReply().
|
private |
|
protectedvirtual |
Reimplemented from CRPCClient< CID2_Request, CID2_Reply >.
Definition at line 83 of file id2_client.cpp.
References in(), CID2_Reply_Base::IsSetEnd_of_reply(), m_Replies, Ref(), and SerialClone().
Referenced by JustFetch().
|
protectedvirtual |
Reimplemented from CRPCClient< CID2_Request, CID2_Reply >.
Definition at line 74 of file id2_client.cpp.
References out(), Ref(), and CID2_Request_Packet_Base::Set().
Referenced by JustAsk().
|
private |
Definition at line 87 of file id2_client.hpp.
Referenced by GetAllReplies(), and ReadReply().