NCBI C++ ToolKit
neticache_client_int.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 #ifndef CONNECT_SERVICES_IMPL__NETICACHE_CLIENT_INT__HPP
2 #define CONNECT_SERVICES_IMPL__NETICACHE_CLIENT_INT__HPP
3 
4 /* $Id: neticache_client_int.hpp 91247 2020-09-30 19:02:00Z sadyrovr $
5  * ===========================================================================
6  *
7  * PUBLIC DOMAIN NOTICE
8  * National Center for Biotechnology Information
9  *
10  * This software/database is a "United States Government Work" under the
11  * terms of the United States Copyright Act. It was written as part of
12  * the author's official duties as a United States Government employee and
13  * thus cannot be copyrighted. This software/database is freely available
14  * to the public for use. The National Library of Medicine and the U.S.
15  * Government have not placed any restriction on its use or reproduction.
16  *
17  * Although all reasonable efforts have been taken to ensure the accuracy
18  * and reliability of the software and data, the NLM and the U.S.
19  * Government do not and cannot warrant the performance or results that
20  * may be obtained by using this software or data. The NLM and the U.S.
21  * Government disclaim all warranties, express or implied, including
22  * warranties of performance, merchantability or fitness for any particular
23  * purpose.
24  *
25  * Please cite the author in any work or product based on this material.
26  *
27  * ===========================================================================
28  *
29  * Author: Rafael Sadyrov
30  *
31  * File Description:
32  * Internal declarations for NetCache ICache client API.
33  *
34  */
35 
36 
38 
39 
41 {
44  : CNetICacheClient(api)
45  {
46  if (api) SetFlags(fBestReliability);
47  }
48 
50  {
52  if (api) SetFlags(fBestReliability);
53  return *this;
54  }
55 
57 
59  const string& key,
60  const string& subkey,
61  int* version,
62  size_t* blob_size_ptr,
63  const CNamedParameterList* optional = NULL);
64 
65  void ProlongBlobLifetime(const string& key, const string& subkey,
66  const CTimeout& ttl, const CNamedParameterList* optional = NULL);
67 
68  SNetCacheAPIImpl* GetNetCacheAPI();
69  const SNetCacheAPIImpl* GetNetCacheAPI() const;
70 
72 };
73 
74 
76 
77 
78 #endif
Client to NetCache server (implements ICache interface)
CTimeout – Timeout interval.
Definition: ncbitime.hpp:1693
A very basic data-read interface.
#define NULL
Definition: ncbistd.hpp:225
IReader * GetReadStream(const string &key, int version, const string &subkey, size_t *blob_size_ptr, const CNamedParameterList *optional=NULL)
Read a lengthy blob via the IReader interface.
virtual void SetFlags(TFlags flags)
Pass flags to the underlying storage.
CNetICacheClient & operator=(SNetICacheClientImpl *impl)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
#define NCBI_NET_CACHE_EXPORT
Definition: ncbi_export.h:288
const string version
version string
Definition: variables.hpp:66
const struct ncbi::grid::netcache::search::fields::KEY key
const struct ncbi::grid::netcache::search::fields::SUBKEY subkey
@ eVoid
To create a void (uninitialized) instance of a component.
CNetICacheClientExt(TInstance api)
CNetICacheClientExt & operator=(TInstance api)
Modified on Fri Sep 20 14:57:55 2024 by modify_doxy.py rev. 669887