diff options
author | Bent Bisballe Nyeng <deva@aasimon.org> | 2011-12-06 14:15:52 +0100 |
---|---|---|
committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2011-12-06 14:15:52 +0100 |
commit | 8f00317567dab4c825a0eca76a9cae7951edd11f (patch) | |
tree | cb0d052e81e1fa9608eb7c3dc539dcc1d65e5043 /server/src/transactionhandler.cc | |
parent | fbeee6710e4132a921ea3c7de15799a8eb681e97 (diff) |
Clean up the way connections are handled.
Diffstat (limited to 'server/src/transactionhandler.cc')
-rw-r--r-- | server/src/transactionhandler.cc | 47 |
1 files changed, 26 insertions, 21 deletions
diff --git a/server/src/transactionhandler.cc b/server/src/transactionhandler.cc index ef112ee..7ec38f8 100644 --- a/server/src/transactionhandler.cc +++ b/server/src/transactionhandler.cc @@ -40,6 +40,14 @@ #include "widgetgenerator.h" #include "journal.h" +#include "exception.h" + +class NotFoundException : public Exception { +public: + NotFoundException(Request &r) + : Exception("Macro " + r.macro + " not found in template " + r.templ) {} +}; + static std::string error_box(std::string message) { std::string errorbox = @@ -55,31 +63,28 @@ static std::string handleCommits(Transaction &transaction, Environment &env, { std::string answer; - if(transaction.commits.size() > 0) { - - Commits::iterator i = transaction.commits.begin(); - while(i != transaction.commits.end()) { - Commit &commit = *i; - - MacroParser mp(env.macrolist.getLatestVersion(commit.macro)); - mp.parse(); - Macro *macro = mp.getMacro(); - - std::string resume = resume_parser(*macro, commit); - commit.fields["journal.resume"] = resume; - session.commitMacro(transaction, commit, *macro); + Commits::iterator i = transaction.commits.begin(); + while(i != transaction.commits.end()) { + Commit &commit = *i; + + MacroParser mp(env.macrolist.getLatestVersion(commit.macro)); + mp.parse(); + Macro *macro = mp.getMacro(); + + std::string resume = resume_parser(*macro, commit); + commit.fields["journal.resume"] = resume; + session.commitMacro(transaction, commit, *macro); - if(resume != "") { + if(resume != "") { - TemplateParser tp(env.templatelist.getLatestVersion(commit.templ)); - tp.parse(); - Template *templ = tp.getTemplate(); + TemplateParser tp(env.templatelist.getLatestVersion(commit.templ)); + tp.parse(); + Template *templ = tp.getTemplate(); - session.journal()->addEntry(transaction, commit, resume, templ); - } - - i++; + session.journal()->addEntry(transaction, commit, resume, templ); } + + i++; } return answer; |