Web framework C++  2.0.0
Simple web framework on c++ designed to easily create web pages, etc
authorized_handler.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <functional>
4 #include "handler.h"
5 #include "entity.h"
6 
16 class AuthorizedHandler : public Handler {
17  const char * authMiddlewareID;
18  Handler * handler;
19  std::function<bool(Entity *)> checkAccess;
20 public:
34  Handler * realHandler,
35  const char * middlewareID,
36  std::function<bool(Entity *)> checkAccess = nullptr
37  );
38 
42  ~AuthorizedHandler() override;
43 
47  void exec() override;
48 
55  void setAccessCheck(std::function<bool(Entity *)> checkAccess);
56 
63  void setNext(Handler * next) override;
64 
71  void add(Handler * handler) override;
72 };
void setAccessCheck(std::function< bool(Entity *)> checkAccess)
void add(Handler *handler) override
void exec() override
void setNext(Handler *next) override
~AuthorizedHandler() override
AuthorizedHandler(Handler *realHandler, const char *middlewareID, std::function< bool(Entity *)> checkAccess=nullptr)
Proxy handler template to control access to another handlers.
Definition: authorized_handler.h:16
Cloneable interface of object wth value and serializable method.
Definition: entity.h:10
object of this class executes every time on new request, this object (and others) construct response ...
Definition: handler.h:13