auto-init for db back-ends

Auto initialization for all DB back-ends and some tidy-up for network
windows auto initialization
This commit is contained in:
aleks-f
2013-02-10 09:06:54 -06:00
parent c7cb7e4498
commit 4bcddad43e
7 changed files with 149 additions and 28 deletions

View File

@@ -38,16 +38,18 @@
#include "Poco/Data/MySQL/SessionImpl.h"
#include "Poco/Data/SessionFactory.h"
#include "Poco/Exception.h"
#include <mysql.h>
const MySQLConnectorRegistrator pocoMySQLConnectorRegistrator;
namespace Poco {
namespace Data {
namespace MySQL {
std::string Connector::KEY("mysql");
std::string Connector::KEY(POCO_DATA_MYSQL_CONNECTOR_NAME);
Connector::Connector()
@@ -61,7 +63,8 @@ Connector::~Connector()
const std::string& Connector::name() const
{
return KEY;
static const std::string n(POCO_DATA_MYSQL_CONNECTOR_NAME);
return n;
}
Poco::AutoPtr<Poco::Data::SessionImpl> Connector::createSession(const std::string& connectionString,
@@ -84,7 +87,7 @@ void Connector::registerConnector()
void Connector::unregisterConnector()
{
Poco::Data::SessionFactory::instance().remove(KEY);
Poco::Data::SessionFactory::instance().remove(POCO_DATA_MYSQL_CONNECTOR_NAME);
mysql_library_end();
}