->FinishOpening();
97 return conn.release();
116 return typeid(
this).name();
131: m_NumConnect(0), m_HasExplicitConnectionFactory(
false)
145 returninstance.
Get();
160 static const char*
msg 161=
"A connection factory has already been explicitly registered.";
180TDbapi_MaxConnection::SetDefault(max_connect);
185 returnTDbapi_MaxConnection::GetDefault();
void Push(const CRef< IConnValidator > &validator)
virtual EConnStatus Validate(CDB_Connection &conn)
void SetConnectionFactory(IDBConnectionFactory *factory, EIfSet if_set=eIfSet_Replace)
Set up a connection factory.
bool m_HasExplicitConnectionFactory
CRef< IDBConnectionFactory > m_ConnectFactory
static void SetMaxConnect(unsigned int max_connect)
unsigned int m_NumConnect
static unsigned int GetMaxConnect(void)
static CDbapiConnMgr & Instance(void)
Get access to the class instance.
EIfSet
What to do if a connection factory has already been explicitly registered.
@ eIfSet_KeepSilently
Silently keep it.
@ eIfSet_KeepAndWarn
Keep it, but issue a warning.
@ eIfSet_Replace
Replace it anyway.
@ eIfSet_KeepAndThrow
Keep it and throw an exception.
virtual void Configure(const IRegistry *registry=NULL)
Configure connection policy using registry.
virtual ~CDefaultConnectPolicy(void)
virtual CDB_Connection * MakeDBConnection(I_DriverContext &ctx, const CDBConnParams ¶ms, CDB_UserHandler::TExceptions &exceptions)
Create new connection object for the given context and connection attributes.
T & Get(void)
Create the variable if not created yet, return the reference.
@ eKeepModifiedConnection
virtual EConnStatus ValidateException(const CDB_Exception &ex)
virtual string GetName(void) const
virtual ~IConnValidator(void)
virtual ~IDBConnectionFactory(void)
IDBConnectionFactory(void)
IDBConnectionFactory will take ownership of validator if there is any.
static CDB_Connection * CtxMakeConnection(I_DriverContext &ctx, const CDBConnParams ¶ms)
Helper method to provide access to a protected method in I_DriverContext for child classses.
NCBI_PARAM_DECL(unsigned int, dbapi, max_connection)
NCBI_PARAM_DEF_EX(unsigned int, dbapi, max_connection, 100, eParam_NoThread, NULL)
typedef NCBI_PARAM_TYPE(dbapi, max_connection) TDbapi_MaxConnection
static CS_CONNECTION * conn
#define DATABASE_DRIVER_ERROR(message, err_code)
deque< CDB_Exception * > TExceptions
Exception container type.
virtual string GetDatabaseName(void) const =0
virtual CRef< IConnValidator > GetConnValidator(void) const =0
#define ERR_POST_X(err_subcode, message)
Error posting with default error code and given error subcode.
void Warning(CExceptionArgs_Base &args)
void Reset(void)
Reset reference object.
@ eParam_NoThread
Do not use per-thread values.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition of all error codes used in dbapi libraries (dbapi_driver.lib and others).
Static variables safety - create on demand, destroy on application termination.
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
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