NCBI C++ ToolKit
|
Search Toolkit Book for CNcbiResourceInfo
Class for storing encrypted resource information. More...
#include <corelib/resource_info.hpp>
Public Types | |
typedef multimap< string, string > | TExtraValuesMap |
Types to access extra values. More... | |
typedef CStringPairs< TExtraValuesMap > | TExtraValues |
![]() | |
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 | |
const string & | GetName (void) const |
Get resource name. More... | |
const string & | GetValue (void) const |
Get main value associated with the requested resource. More... | |
void | SetValue (const string &new_value) |
Set new main value for the resource. More... | |
const TExtraValues & | GetExtraValues (void) const |
Get read-only set of extra values associated with the resource. More... | |
TExtraValues & | GetExtraValues_NC (void) |
Get non-const set of extra values associated with the resource. More... | |
operator bool (void) const | |
Check if the object is initialized. More... | |
![]() | |
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... | |
![]() | |
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 |
Private Member Functions | |
CNcbiResourceInfo (const CNcbiResourceInfo &) | |
CNcbiResourceInfo & | operator= (const CNcbiResourceInfo &) |
CNcbiResourceInfo (void) | |
Create a new empty resource info. More... | |
CNcbiResourceInfo (const string &res_name, const string &pwd, const string &enc) | |
bool | x_IsEmpty (void) const |
string | x_GetEncoded (void) const |
Static Private Member Functions | |
static CNcbiResourceInfo & | GetEmptyResInfo (void) |
Private Attributes | |
string | m_Name |
string | m_Password |
string | m_Value |
TExtraValues | m_Extra |
Friends | |
class | CNcbiResourceInfoFile |
class | CSafeStatic_Allocator< CNcbiResourceInfo > |
Additional Inherited Members | |
![]() | |
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 void | EnableDebugDump (bool on) |
![]() | |
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... | |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Class for storing encrypted resource information.
Definition at line 52 of file resource_info.hpp.
Definition at line 66 of file resource_info.hpp.
Types to access extra values.
Definition at line 65 of file resource_info.hpp.
|
private |
|
private |
Create a new empty resource info.
Definition at line 369 of file resource_info.cpp.
References m_Extra, CStringPairs< TContainer >::SetDecoder(), and CStringPairs< TContainer >::SetEncoder().
|
private |
Definition at line 376 of file resource_info.cpp.
References _ASSERT, kResourceExtraSeparator, m_Extra, m_Name, m_Password, m_Value, NCBI_THROW, CStringPairs< TContainer >::Parse(), CStringPairs< TContainer >::SetDecoder(), CStringPairs< TContainer >::SetEncoder(), NStr::SplitInTwo(), NStr::URLDecode(), and val.
|
staticprivate |
Definition at line 406 of file resource_info.cpp.
Referenced by CNcbiResourceInfoFile::AddResourceInfo(), and CNcbiResourceInfoFile::GetResourceInfo().
|
inline |
Get read-only set of extra values associated with the resource.
Definition at line 69 of file resource_info.hpp.
References m_Extra.
|
inline |
Get non-const set of extra values associated with the resource.
Definition at line 72 of file resource_info.hpp.
References m_Extra.
Get main value associated with the requested resource.
Definition at line 59 of file resource_info.hpp.
References m_Value.
|
inline |
Check if the object is initialized.
Definition at line 75 of file resource_info.hpp.
References x_IsEmpty().
|
private |
Set new main value for the resource.
Definition at line 62 of file resource_info.hpp.
References m_Value.
|
private |
Definition at line 413 of file resource_info.cpp.
References kEmptyStr, kResourceExtraSeparator, m_Extra, m_Password, m_Value, CStringPairs< TContainer >::Merge(), str(), NStr::URLEncode(), and x_IsEmpty().
|
inlineprivate |
Definition at line 97 of file resource_info.hpp.
References m_Name.
Referenced by operator bool(), and x_GetEncoded().
|
friend |
Definition at line 82 of file resource_info.hpp.
|
friend |
Definition at line 82 of file resource_info.hpp.
|
private |
Definition at line 105 of file resource_info.hpp.
Referenced by CNcbiResourceInfo(), GetExtraValues(), GetExtraValues_NC(), and x_GetEncoded().
|
private |
Definition at line 102 of file resource_info.hpp.
Referenced by CNcbiResourceInfo(), GetName(), and x_IsEmpty().
|
mutableprivate |
Definition at line 103 of file resource_info.hpp.
Referenced by CNcbiResourceInfo(), and x_GetEncoded().
|
mutableprivate |
Definition at line 104 of file resource_info.hpp.
Referenced by CNcbiResourceInfo(), GetValue(), SetValue(), and x_GetEncoded().