summaryrefslogtreecommitdiff
path: root/icetray/dryice/mockPool.cpp
blob: 6ad91d2dcc760e16aa120f21b7e67d197ca207d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "mockPool.h"
#include "icetrayService.h"
#include <factory.impl.h>

namespace IceTray {
	MockPool::MockPool(const std::string & name, const std::string &, const Ice::PropertiesPtr & p) :
		MockPool(name, static_cast<unsigned int>(p->getPropertyAsIntWithDefault(name + ".Database.PoolMax", 10)),
				static_cast<unsigned int>(p->getPropertyAsIntWithDefault(name + ".Database.PoolKeep", 2)))
	{
	}

	MockPool::MockPool(std::string name, unsigned int size, unsigned int keep) :
		DB::BasicConnectionPool(size, keep), name(std::move(name))
	{
	}

	DB::ConnectionPtr
	MockPool::createResource() const
	{
		return DB::MockDatabase::openConnectionTo(name);
	}

	FACTORY(MockPool, PoolProvider)
}