]>
jfr.im git - irc/gameservirc.git/blob - gameserv-2.0/libgameservgldl/src/DataLayer/DataAccess.cpp
1 #include <GameServ/DataLayer/DataAccess.h>
2 #include <GameServ/DataLayer/DataLayerExceptions.h>
3 #include <GameServ/DataLayer/File/FileDAOFactory.h>
5 using GameServ::DataLayer::DataAccess
;
6 using GameServ::DataLayer::Exceptions::DataLayerException
;
7 using GameServ::DataLayer::File::FileDAOFactory
;
9 #include <boost/shared_ptr.hpp>
10 #include <boost/format.hpp>
11 using boost::shared_ptr
;
15 shared_ptr
<IDAOFactory
> DataAccess::GetDataAccessFactory(const string
&Provider
)
17 // Make sure a provider was even specified
19 throw DataLayerException("When using the DataLayer you must specify a Provider programatically", __FILE__
, __LINE__
);
21 if (Provider
== "File")
22 return shared_ptr
<IDAOFactory
>(new FileDAOFactory());
23 // else if (Provider == "MySQL")
24 // PUT OTHER PROVIDERS HERE
26 throw DataLayerException(str(format("The Data Provider %1% is not supported by the DataLayer, "
27 "please check your Provider string") % Provider
), __FILE__
, __LINE__
);