diff options
author | randomdan <randomdan@localhost> | 2010-08-24 20:41:54 +0000 |
---|---|---|
committer | randomdan <randomdan@localhost> | 2010-08-24 20:41:54 +0000 |
commit | 64992fdf169c55f8575e9d3926a66d8bb90f39d2 (patch) | |
tree | e24f74a9b227d13ee91c55d65e47d983cb0cd179 /project2/cgi | |
parent | Add option to use a temporary view instead of a table to reduce WAL churn dur... (diff) | |
download | project2-64992fdf169c55f8575e9d3926a66d8bb90f39d2.tar.bz2 project2-64992fdf169c55f8575e9d3926a66d8bb90f39d2.tar.xz project2-64992fdf169c55f8575e9d3926a66d8bb90f39d2.zip |
Whole new low dependency object loader
Switch to using intrusive_ptr in cases where the class is mine
Remove deps of funtional type base cpp files on implementation headers
General tidy up in places
Post load event and removal of mutable things initialised on first run
Diffstat (limited to 'project2/cgi')
-rw-r--r-- | project2/cgi/cgiAppEngine.cpp | 15 | ||||
-rw-r--r-- | project2/cgi/cgiAppEngine.h | 2 |
2 files changed, 8 insertions, 9 deletions
diff --git a/project2/cgi/cgiAppEngine.cpp b/project2/cgi/cgiAppEngine.cpp index 98cb397..f37172e 100644 --- a/project2/cgi/cgiAppEngine.cpp +++ b/project2/cgi/cgiAppEngine.cpp @@ -87,7 +87,7 @@ CgiApplicationEngine::Stage * CgiApplicationEngine::PresentStage::run() { BOOST_FOREACH(OrderedParamCheckers::value_type pc, parameterChecks) { - if (!pc.second->performCheck(appEngine)) { + if (!pc.second->performCheck()) { return new PresentStage(appEngine, pc.second->present); } } @@ -147,12 +147,11 @@ CgiApplicationEngine::RequestStage::RequestStage(const CgiApplicationEngine * e, xmlpp::Element * requestRoot = request.get_document()->get_root_node(); present = requestRoot->get_attribute_value("present"); - Loaders loaders; - _DataSource::AddLoaders(loaders, appEngine->datasources); - _ParamChecker::AddLoaders(loaders, parameterChecks); - _Task::AddLoaders(loaders, tasks); - _Iterate::AddLoaders(loaders, tasks); - _LoaderBase::collectAll(loaders, "project2", requestRoot, true, true); + LoaderBase loader; + loader.supportedStorers.insert(Storer::into(&appEngine->datasources)); + loader.supportedStorers.insert(Storer::into(¶meterChecks)); + loader.supportedStorers.insert(Storer::into(&tasks)); + loader.collectAll("project2", requestRoot, true, true); } CgiApplicationEngine::RequestStage::~RequestStage() { @@ -161,7 +160,7 @@ CgiApplicationEngine::Stage * CgiApplicationEngine::RequestStage::run() { BOOST_FOREACH(OrderedParamCheckers::value_type pc, parameterChecks) { - if (!pc.second->performCheck(appEngine)) { + if (!pc.second->performCheck()) { return new PresentStage(appEngine, pc.second->present); } } diff --git a/project2/cgi/cgiAppEngine.h b/project2/cgi/cgiAppEngine.h index 112e672..cebb294 100644 --- a/project2/cgi/cgiAppEngine.h +++ b/project2/cgi/cgiAppEngine.h @@ -5,7 +5,7 @@ #include "../task.h" #include "../paramChecker.h" #include "../presenter.h" -#include <boost/shared_ptr.hpp> +#include <boost/intrusive_ptr.hpp> #include <boost/uuid/uuid.hpp> #include <libxml++/document.h> #include <libxml++/parsers/domparser.h> |