// Connector // // Douglas Thrift // // $Id$ #ifndef _Connector_hpp_ #define _Connector_hpp_ #include #ifdef MENES_PRAGMA_ONCE #pragma once #endif #include #include #include #include class Connector : public ext::ReferenceCounted { private: _R driver; cse::String host, user, password, database; api::ThreadMutex connectionsLock; ext::Stack<_R > connections; bool running; _S cleanup; int Cleanup(); public: Connector(const cse::String& configuration); ~Connector() { running = false; cleanup.Join(); } _R Connect(); void Release(const _R& connection); }; #endif//_Connector_hpp_