From: kainazzzo Date: Tue, 8 Sep 2009 19:34:35 +0000 (+0000) Subject: Completed some more work on FilePlayerDAO and Created a PlayerGL object which uses... X-Git-Url: https://jfr.im/git/irc/gameservirc.git/commitdiff_plain/f21affc9fa3913168b9b7f9c1e781b73f96fab84?ds=inline Completed some more work on FilePlayerDAO and Created a PlayerGL object which uses the DataAccess and IDAOFactory objects git-svn-id: https://svn.code.sf.net/p/gameservirc/code/trunk@510 bc333340-6410-0410-a689-9d09f3c113fa --- diff --git a/gameserv-2.0/GameServ.sln b/gameserv-2.0/GameServ.sln index b4f6da9..f451377 100644 --- a/gameserv-2.0/GameServ.sln +++ b/gameserv-2.0/GameServ.sln @@ -8,6 +8,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgameservgldl", "libgames EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgameservcore", "libgameservcore\libgameservcore.vcproj", "{279AA91C-8638-45E5-AAA3-988F74764A97}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testdriver", "testdriver\testdriver.vcproj", "{9DAAD910-02AF-431F-88F2-08434ECB5102}" + ProjectSection(ProjectDependencies) = postProject + {279AA91C-8638-45E5-AAA3-988F74764A97} = {279AA91C-8638-45E5-AAA3-988F74764A97} + {3CED9BD5-BEAA-4C36-A735-AFF2B3F2CF42} = {3CED9BD5-BEAA-4C36-A735-AFF2B3F2CF42} + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Win32 = Debug|Win32 @@ -22,6 +28,10 @@ Global {279AA91C-8638-45E5-AAA3-988F74764A97}.Debug|Win32.Build.0 = Debug|Win32 {279AA91C-8638-45E5-AAA3-988F74764A97}.Release|Win32.ActiveCfg = Release|Win32 {279AA91C-8638-45E5-AAA3-988F74764A97}.Release|Win32.Build.0 = Release|Win32 + {9DAAD910-02AF-431F-88F2-08434ECB5102}.Debug|Win32.ActiveCfg = Debug|Win32 + {9DAAD910-02AF-431F-88F2-08434ECB5102}.Debug|Win32.Build.0 = Debug|Win32 + {9DAAD910-02AF-431F-88F2-08434ECB5102}.Release|Win32.ActiveCfg = Release|Win32 + {9DAAD910-02AF-431F-88F2-08434ECB5102}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/gameserv-2.0/libgameservgldl/include/GameServ/DataLayer/IPlayerDAO.h b/gameserv-2.0/libgameservgldl/include/GameServ/DataLayer/IPlayerDAO.h index 391c8d7..d71fcd0 100644 --- a/gameserv-2.0/libgameservgldl/include/GameServ/DataLayer/IPlayerDAO.h +++ b/gameserv-2.0/libgameservgldl/include/GameServ/DataLayer/IPlayerDAO.h @@ -7,8 +7,6 @@ using GameServ::GameLayer::GameObjects::PlayerGO; #include using boost::shared_ptr; -#include -using std::vector; #include using std::list; #include diff --git a/gameserv-2.0/libgameservgldl/include/GameServ/GameLayer/PlayerGL.h b/gameserv-2.0/libgameservgldl/include/GameServ/GameLayer/PlayerGL.h new file mode 100644 index 0000000..60e74cb --- /dev/null +++ b/gameserv-2.0/libgameservgldl/include/GameServ/GameLayer/PlayerGL.h @@ -0,0 +1,32 @@ +#ifndef __GS__PLAYERGL_H__ +#define __GS__PLAYERGL_H__ + +#include +using GameServ::DataLayer::DataAccessObjects::IPlayerDAO; + +#include +using boost::shared_ptr; + +#include +using std::list; +#include +using std::string; +namespace GameServ { namespace GameLayer { + +class PlayerGL +{ +public: + PlayerGL(); + ~PlayerGL(); + + shared_ptr GetById(const string &Id); + void Insert(shared_ptr spPlayer); + +private: + void Initialize(); + shared_ptr mspPlayerDAO; +}; + +}} + +#endif \ No newline at end of file diff --git a/gameserv-2.0/libgameservgldl/libgameservgldl.vcproj b/gameserv-2.0/libgameservgldl/libgameservgldl.vcproj index db59a53..38e062c 100644 --- a/gameserv-2.0/libgameservgldl/libgameservgldl.vcproj +++ b/gameserv-2.0/libgameservgldl/libgameservgldl.vcproj @@ -174,6 +174,10 @@ RelativePath=".\include\GameServ\DataLayer\IDAOFactory.h" > + + @@ -202,6 +206,14 @@ + + + + diff --git a/gameserv-2.0/libgameservgldl/src/DataLayer/File/FilePlayerDAO.cpp b/gameserv-2.0/libgameservgldl/src/DataLayer/File/FilePlayerDAO.cpp index e3b56be..59e6e64 100644 --- a/gameserv-2.0/libgameservgldl/src/DataLayer/File/FilePlayerDAO.cpp +++ b/gameserv-2.0/libgameservgldl/src/DataLayer/File/FilePlayerDAO.cpp @@ -117,4 +117,23 @@ void FilePlayerDAO::SetFlags(shared_ptr spPlayer, const int &flags) co } +void FilePlayerDAO::Update(shared_ptr spPlayer) +{ + throw DataLayerException("Undefined Function", __FILE__, __LINE__); +} + +void FilePlayerDAO::Insert(shared_ptr spPlayer) +{ + throw DataLayerException("Undefined Function", __FILE__, __LINE__); +} +bool FilePlayerDAO::IdExists(const string &Id) const +{ + throw DataLayerException("Undefined Function", __FILE__, __LINE__); + return false; +} + +list FilePlayerDAO::GetIdsByName(const string &Name) const +{ + throw DataLayerException("Undefined Function", __FILE__, __LINE__); +} \ No newline at end of file diff --git a/gameserv-2.0/libgameservgldl/src/DataLayer/IPlayerDAO.cpp b/gameserv-2.0/libgameservgldl/src/DataLayer/IPlayerDAO.cpp new file mode 100644 index 0000000..70408f0 --- /dev/null +++ b/gameserv-2.0/libgameservgldl/src/DataLayer/IPlayerDAO.cpp @@ -0,0 +1,10 @@ +#include +using GameServ::DataLayer::DataAccessObjects::IPlayerDAO; + +IPlayerDAO::IPlayerDAO() +{ +} + +IPlayerDAO::~IPlayerDAO() +{ +} \ No newline at end of file diff --git a/gameserv-2.0/libgameservgldl/src/GameLayer/PlayerGL.cpp b/gameserv-2.0/libgameservgldl/src/GameLayer/PlayerGL.cpp new file mode 100644 index 0000000..d16dd55 --- /dev/null +++ b/gameserv-2.0/libgameservgldl/src/GameLayer/PlayerGL.cpp @@ -0,0 +1,38 @@ +#include +using GameServ::GameLayer::PlayerGL; + +#include +using GameServ::DataLayer::DataAccess; +#include +using GameServ::DataLayer::IDAOFactory; + +PlayerGL::PlayerGL() +{ + Initialize(); +} + +PlayerGL::~PlayerGL() +{ + mspPlayerDAO = shared_ptr(); +} + +void PlayerGL::Initialize() +{ + shared_ptr spDAOFactory; + // TODO: Hard coded for now for POC. Get from a config file + spDAOFactory = shared_ptr(DataAccess::GetDataAccessFactory("File")); + mspPlayerDAO = spDAOFactory->GetPlayerDAO(); + +} + +shared_ptr PlayerGL::GetById(const string &Id) +{ + assert(!Id.empty()); + return mspPlayerDAO->GetById(Id); +} + +void PlayerGL::Insert(shared_ptr spPlayer) +{ + assert(spPlayer != 0); + mspPlayerDAO->Insert(spPlayer); +} \ No newline at end of file diff --git a/gameserv-2.0/testdriver/main.cpp b/gameserv-2.0/testdriver/main.cpp new file mode 100644 index 0000000..1b57d2a --- /dev/null +++ b/gameserv-2.0/testdriver/main.cpp @@ -0,0 +1,13 @@ +#include +using namespace std; +#include +using GameServ::GameLayer::GameObjects::PlayerGO; +#include +using GameServ::GameLayer::PlayerGL; + +int main() +{ + PlayerGL pgl; + shared_ptr spPlayer = pgl.GetById("1"); + return 0; +} diff --git a/gameserv-2.0/testdriver/testdriver.vcproj b/gameserv-2.0/testdriver/testdriver.vcproj new file mode 100644 index 0000000..0a2ba01 --- /dev/null +++ b/gameserv-2.0/testdriver/testdriver.vcproj @@ -0,0 +1,167 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +