/* * This file is a part of CMSLU -- Content Management System like Unix * and is not publicly distributed * * Copyright (c) 2008-2009, Tomasz Sowa * All rights reserved. * */ #ifndef headerfilecmslucorepostparser #define headerfilecmslucorepostparser #include #include #include "httpsimpleparser.h" #include "requesttypes.h" class PostParser : public HttpSimpleParser { FCGX_Stream * in; PostTable & post_table; protected: virtual int GetChar() { return FCGX_GetChar(in); } virtual void Parameter(std::string & name, std::string & value) { std::pair res = post_table.insert( std::make_pair(name, value) ); log << log2 << "Method POST, name: \"" << name << "\", value: \"" << value << "\""; if( res.second == false ) log << log2 << " (skipped)"; log << log2 << logend; } public: PostParser(FCGX_Stream * in_, PostTable & post_table_) : in(in_), post_table(post_table_) { } }; #endif