/////////////////////////////////////////////////////////////////////// // RepositoryBase.cpp - another application of Singleton Pattern // // // // Jim Fawcett, CSE776 - Design Patterns, Fall 2017 // /////////////////////////////////////////////////////////////////////// #include "RepositoryBase.h" #include "../Locks/Locks.h" #include using namespace Locks; using namespace Singleton; using namespace Utilities; using Repo = RepositoryBase; void showList(Repo* pRep, const std::string& msg = "") { if (pRep) { std::list list = pRep->getList(); std::cout << "\n " << msg; for (std::string item : list) { std::cout << " " << item; } } } int main() { title<'='>("Testing RepositoryBase"); putLine(); Repo repo; title<'-'>("testing adds"); repo.add("123").add("456"); showList(&repo, "repo"); putLine(); title<'-'>("testing get"); std::list list = repo.getList(); std::cout << "\n "; for (auto item : list) std::cout << item << " "; putLine(); title<'-'>("testing set"); std::list newList{ "abc", "def", "ghi" }; repo.setList(newList); showList(&repo, "repo"); putLine(2); return 0; }