info_str = to_string(
info);
124 stringchunks_str = to_string(chunks);
126 size_treserve =
m_Id2Info.size() + info_str.size() + chunks_str.size() + 2;
128version_str = to_string(
version);
129reserve += version_str.size() + 1;
132 m_Id2Info.append(1,
'.').append(info_str).append(1,
'.').append(chunks_str);
134 m_Id2Info.append(1,
'.').append(version_str);
208 if(!chunk.empty()) {
216 if(!chunk.empty()) {
239 RAISE_DB_ERROR(eInconsistentData,
string(
"BlobChunks count inconsistent with NChunks property. key: ") +
250 RAISE_DB_ERROR(eInconsistentData,
string(
"BlobChunks size verification failed. key: ") +
260 size_tthis_chunk = 0, blob_chunk = 0;
261 size_tthis_offset = 0, blob_offset = 0;
270 size_tcompare_length =
min(
282this_offset += compare_length;
283blob_offset += compare_length;
289 if(blob_offset >= blob.
m_BlobChunks[blob_chunk].size()) {
385 RAISE_DB_ERROR(eInconsistentData,
string(
"BlobChunk index requested is too large. key: ") +
399<<
"\tm_Size: "<<
m_Size<< endl
404<<
"\tm_Owner: "<<
m_Owner<< endl
405<<
"\tm_Class: "<<
m_Class<< endl
407<<
"\tm_Div: "<<
m_Div<< endl
409<<
"\tm_Flags: "<<
m_Flags<< endl
#define BEGIN_IDBLOB_SCOPE
BEGIN_IDBLOB_SCOPE USING_NCBI_SCOPE
#define RAISE_DB_ERROR(errc, comm)
std::string TimeTmsToString(int64_t time)
CBlobRecord & SetNChunks(int32_t value)
CBlobRecord & SetId2Info(string const &value)
CBlobRecord & SetFlag(bool set_flag, EBlobFlags flag_value)
CBlobRecord & ClearBlobChunks()
TSize GetSizeUnpacked() const
CBlobRecord & SetHupDate(TTimestamp value)
CBlobRecord & SetSuppress(bool value)
TTimestamp GetDateAsn1() const
CBlobRecord & SetDiv(string value)
const TBlobChunk & GetChunk(size_t index) const
string GetUserName() const
vector< unsigned char > TBlobChunk
void VerifyBlobSize() const
TBlobFlagBase GetFlags() const
bool GetFlag(EBlobFlags flag_value) const
CBlobRecord & SetDateAsn1(TTimestamp value)
CBlobRecord & SetBigBlobSchema(bool value)
CBlobRecord & SetSize(TSize value)
CBlobRecord & ResetNChunks()
TTimestamp GetModified() const
bool IsDataEqual(CBlobRecord const &blob) const
CBlobRecord & InsertBlobChunk(size_t index, TBlobChunk &&chunk)
CBlobRecord & SetFlags(TBlobFlagBase value)
TTimestamp GetHupDate() const
vector< TBlobChunk > m_BlobChunks
CBlobRecord & SetNot4Gbu(bool value)
CBlobRecord & SetSizeUnpacked(TSize value)
CBlobRecord & SetGzip(bool value)
CBlobRecord & SetClass(int16_t value)
CBlobRecord & SetWithdrawn(bool value)
CBlobRecord & AppendBlobChunk(TBlobChunk &&chunk)
CBlobRecord & SetDead(bool value)
CBlobRecord & SetUserName(string value)
string GetId2Info() const
CBlobRecord & SetKey(TSatKey value)
bool IsConfidential() const
CBlobRecord & SetModified(TTimestamp value)
CBlobRecord & SetOwner(int32_t value)
The NCBI C++ standard methods for dealing with std::string.
static enable_if< is_arithmetic< TNumeric >::value||is_convertible< TNumeric, Int8 >::value, string >::type NumericToString(TNumeric value, TNumToStringFlags flags=0, int base=10)
Convert numeric value to string.
const string version
version string
const struct ncbi::grid::netcache::search::fields::SIZE size
const struct ncbi::grid::netcache::search::fields::KEY key
const GenericPointer< typename T::ValueType > T2 value
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