Commit 31f166c4 authored by jan.koester's avatar jan.koester
Browse files

prepared for new api's

parent 115a7cc7
Loading
Loading
Loading
Loading
+14 −14
Original line number Diff line number Diff line
@@ -11,23 +11,22 @@

std::mutex   file_mutex;

class Controller : public netplus::event {
class Controller : public libhttppp::HttpEvent {
public:
    Controller(netplus::socket* serversocket,libhtmlpp::HtmlElement *tpl) : event(serversocket){
    Controller(netplus::socket* serversocket,libhtmlpp::HtmlElement *tpl) : HttpEvent(serversocket){
        _tpl=tpl;
    };

    void RequestEvent(netplus::con *curcon){
            libhttppp::HttpRequest curreq;
    void RequestEvent(libhttppp::HttpRequest *curreq,int tid,void *arg){
            try {
                curreq.parse(curcon);
                curreq->parse();
                libhttppp::HttpForm gform;

                try{
                    std::string guestname,guestentry;
                    gform.parse(&curreq);
                    for (libhttppp::HttpForm::UrlcodedFormData* cururlform = gform.getUrlcodedFormData(); cururlform;
                        cururlform = cururlform->nextUrlcodedFormData()) {
                    gform.parse(curreq);
                    for (libhttppp::HttpForm::UrlcodedForm::Data * cururlform = gform.UrlFormData.getFormData(); cururlform;
                        cururlform = cururlform->nextData()) {
                        if(strcmp("guestname",cururlform->getKey())==0){
                            guestname=cururlform->getValue();
                        }else if(strcmp("guestentry",cururlform->getKey())==0){
@@ -93,14 +92,14 @@ public:

                libhtmlpp::HtmlString hdoc;
                libhtmlpp::print(&site,hdoc);
                resp.send(curcon,hdoc.c_str(),hdoc.size());
                resp.send(curreq,hdoc.c_str(),hdoc.size());
            } catch (libhttppp::HTTPException& e) {
                if (e.getErrorType() != libhttppp::HTTPException::Note) {
                    libhttppp::HttpResponse curres;
                    curres.setState(HTTP500);
                    curres.setVersion(HTTPVERSION(2.0));
                    curres.setContentLength(0);
                    curres.send(curcon, e.what(), strlen(e.what()));
                    curres.send(curreq, e.what(), strlen(e.what()));
                }
            }
    }
@@ -114,8 +113,7 @@ public:
  HttpConD(int argc, char** argv,libhtmlpp::HtmlElement *tpl) : HttpD(argc,argv){
    libhttppp::HTTPException httpexception;
    try {
      Controller controller(getServerSocket(),tpl);
      controller.runEventloop();
        Controller(getServerSocket(),tpl);
    }catch(libhttppp::HTTPException &e){
        std::cerr << e.what() << std::endl;
    }
@@ -125,5 +123,7 @@ private:

int main(int argc, char** argv){
    libhtmlpp::HtmlPage page;
    HttpConD(argc,argv,page.loadFile("guest.html"));
    libhtmlpp::HtmlElement index;
    page.loadFile(index,"guest.html");
    HttpConD(argc,argv,&index);
}