Created
August 3, 2012 17:18
-
-
Save paulbarbu/3249714 to your computer and use it in GitHub Desktop.
booster::regex:unmatched parentheses, at offset 4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"service" : { | |
"api" : "http", | |
"port" : 8080 | |
}, | |
"http" : { | |
"script" : "/myapp" | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <cppcms/application.h> | |
#include <cppcms/applications_pool.h> | |
#include <cppcms/service.h> | |
#include <cppcms/http_response.h> | |
#include <cppcms/url_dispatcher.h> | |
#include <cppcms/url_mapper.h> | |
#include <exception> | |
using std::exception; | |
using std::cerr; | |
class number : public cppcms::application{ | |
public: | |
number(cppcms::service &srv); | |
void even(); | |
void odd(); | |
void prime(); | |
void all(); | |
}; | |
number::number(cppcms::service &srv) : cppcms::application(srv){ | |
dispatcher().assign("/odd)", &number::odd, this); | |
mapper().assign("odd", "/odd"); | |
dispatcher().assign("/even", &number::even, this); | |
mapper().assign("even", "/even"); | |
dispatcher().assign("/prime", &number::prime, this); | |
mapper().assign("prime", "/prime"); | |
dispatcher().assign("", &number::all, this); | |
mapper().assign(""); | |
} | |
void number::odd(){ | |
response().out()<<"Odd"; | |
} | |
void number::even(){ | |
response().out()<<"Even"; | |
} | |
void number::prime(){ | |
response().out()<<"Prime"; | |
} | |
void number::all(){ | |
response().out()<<url(".")<<"<br>"<<url("/")<<"<br>"<<url("/letter"); | |
} | |
class letter : public cppcms::application{ | |
public: | |
letter(cppcms::service &srv); | |
void capital(); | |
void small(); | |
void all(); | |
}; | |
letter::letter(cppcms::service &srv) : cppcms::application(srv){ | |
dispatcher().assign("/capital)", &letter::capital, this); | |
mapper().assign("capital", "/capital"); | |
dispatcher().assign("/small", &letter::small, this); | |
mapper().assign("small", "/small"); | |
dispatcher().assign("", &letter::all, this); | |
mapper().assign(""); | |
} | |
void letter::small(){ | |
response().out()<<"Small"; | |
} | |
void letter::capital(){ | |
response().out()<<"Cap"; | |
} | |
void letter::all(){ | |
response().out()<<url(".")<<"<br>"<<url("/")<<"<br>"<<url("/number"); | |
} | |
class myapp : public cppcms::application{ | |
public: | |
myapp(cppcms::service &srv); | |
void describe(); | |
}; | |
myapp::myapp(cppcms::service &srv) : cppcms::application(srv){ | |
attach(new number(srv), "number", "/number{1}", "/number(/(.*))?", 1); | |
attach(new letter(srv), "letter", "/letter{1}", "/letter(/(.*))?", 1); | |
dispatcher().assign("", &myapp::describe, this); | |
mapper().assign(""); | |
mapper().root("/myapp"); | |
} | |
void myapp::describe(){ | |
response().out()<<url(".")<<"<br>"<<url("/")<<"<br>"<<url("/letter")<< | |
"\n"<<url("/number"); | |
} | |
int main(int argc, char *argv[]){ | |
try{ | |
cppcms::service srv(argc, argv); | |
srv.applications_pool().mount(cppcms::applications_factory<myapp>()); | |
srv.run(); | |
} | |
catch(exception const &e){ | |
cerr<<e.what()<<"\n"; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment