aboutsummaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/CMakeLists.txt9
-rw-r--r--examples/example.cpp33
2 files changed, 38 insertions, 4 deletions
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 1fcec94..83b5478 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -3,7 +3,8 @@ project (crow_examples)
add_executable(example example.cpp)
#target_link_libraries(example crow)
-target_link_libraries(example ${Boost_LIBRARIES} )
+target_link_libraries(example ${Boost_LIBRARIES})
+target_link_libraries(example ${CMAKE_THREAD_LIBS_INIT})
if (Tcmalloc_FOUND)
target_link_libraries(example ${Tcmalloc_LIBRARIES})
@@ -11,7 +12,8 @@ endif(Tcmalloc_FOUND)
add_executable(example_with_all example_with_all.cpp)
#target_link_libraries(example crow)
-target_link_libraries(example_with_all ${Boost_LIBRARIES} )
+target_link_libraries(example_with_all ${Boost_LIBRARIES})
+target_link_libraries(example_with_all ${CMAKE_THREAD_LIBS_INIT})
add_custom_command(OUTPUT example_test.py
COMMAND ${CMAKE_COMMAND} -E
@@ -22,7 +24,8 @@ add_custom_target(example_copy ALL DEPENDS example_test.py)
add_executable(example_chat example_chat.cpp)
#target_link_libraries(example_chat crow)
-target_link_libraries(example_chat ${Boost_LIBRARIES} )
+target_link_libraries(example_chat ${Boost_LIBRARIES})
+target_link_libraries(example_chat ${CMAKE_THREAD_LIBS_INIT})
add_custom_command(OUTPUT example_chat.html
COMMAND ${CMAKE_COMMAND} -E
copy ${PROJECT_SOURCE_DIR}/example_chat.html ${CMAKE_CURRENT_BINARY_DIR}/example_chat.html
diff --git a/examples/example.cpp b/examples/example.cpp
index d7a4736..51ce6ed 100644
--- a/examples/example.cpp
+++ b/examples/example.cpp
@@ -10,9 +10,40 @@ class ExampleLogHandler : public crow::ILogHandler {
}
};
+struct ExampleMiddelware
+{
+ std::string message;
+
+ ExampleMiddelware()
+ {
+ message = "foo";
+ }
+
+ void setMessage(std::string newMsg)
+ {
+ message = newMsg;
+ }
+
+ struct context
+ {
+ };
+
+ void before_handle(crow::request& req, crow::response& res, context& ctx)
+ {
+ CROW_LOG_DEBUG << " - MESSAGE: " << message;
+ }
+
+ void after_handle(crow::request& req, crow::response& res, context& ctx)
+ {
+ // no-op
+ }
+};
+
int main()
{
- crow::SimpleApp app;
+ crow::App<ExampleMiddelware> app;
+
+ app.get_middleware<ExampleMiddelware>().setMessage("hello");
CROW_ROUTE(app, "/")
.name("hello")