39 #define NCBI_USE_ERRCODE_X Corelib_Blob
51 "DeleteStorage operation is not implemented.");
66 : m_Params(params, own)
86 m_Params->FindSubNode(
"blob_storage");
88 string driver_name =
"netcache";
92 if (driver_tree && !driver_tree->
GetValue().value.empty()) {
93 driver_name = driver_tree->
GetValue().value;
94 storage_tree =
m_Params->FindSubNode(driver_name);
97 storage_tree =
m_Params->FindSubNode(
"netcache_api");
99 storage_tree =
m_Params->FindSubNode(
"netcache_client");
103 drv = cache_manager->CreateInstance(
128 case eReader:
return "eReaderError";
129 case eWriter:
return "eWriterError";
132 case eBusy:
return "eBusy";
@ eBlobNotFound
A blob is not found.
@ eBusy
An instance of storage is busy.
@ eNotImplemented
An operation is not implemented.
@ eBlocked
A blob is blocked by another reader/writer.
@ eWriter
A problem arised while writing to a storage.
@ eReader
A problem arised while reading from a storage.
virtual const char * GetErrCodeString(void) const override
Get error code interpreted as text.
CBlobStorageFactory(const IRegistry ®)
virtual IBlobStorage * CreateInstance(void)
Create an instance of Blob Storage.
AutoPtr< const TPluginManagerParamTree > m_Params
virtual ~CBlobStorageFactory()
An Empty implementation of Blob Storage Interface.
CPluginManagerException –.
definition of a Culling tree
virtual ~IBlobStorageFactory()
virtual void DeleteStorage(void)
Delete the storage with all its data.
@ eTakeOwnership
An object can take ownership of another.
#define ERR_POST_X(err_subcode, message)
Error posting with default error code and given error subcode.
TErrCode GetErrCode(void) const
Get error code.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
void Warning(CExceptionArgs_Base &args)
TErrCode GetErrCode(void) const
virtual const char * GetErrCodeString(void) const
Get error code interpreted as text.
#define NCBI_INTERFACE_VERSION(iface)
Macro to construct CVersionInfo class using interface name (relies on CInterfaceVersion class)
@ eResolveFailure
Cannot resolve interface driver.
@ eNullInstance
Factory returned NULL instance.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
const TTreeType * FindSubNode(const TKeyType &key) const
Non recursive linear scan of all subnodes, with key comparison.
const TValue & GetValue(void) const
Return node's value.
enum ENcbiOwnership EOwnership
Ownership relations between objects.
Definition of all error codes used in corelib (xncbi.lib).
const TYPE & Get(const CNamedParameterList *param)
Parameters initialization model.