cutelyst  3.9.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
statusmessage.h
1 /*
2  * SPDX-FileCopyrightText: (C) 2016-2022 Daniel Nicoletti <dantti12@gmail.com>
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 #ifndef CUTELYST_PLUGIN_STATUSMESSAGE
6 #define CUTELYST_PLUGIN_STATUSMESSAGE
7 
8 #include <Cutelyst/context.h>
9 #include <Cutelyst/cutelyst_global.h>
10 #include <Cutelyst/plugin.h>
11 
12 namespace Cutelyst {
13 
14 class StatusMessagePrivate;
15 class CUTELYST_PLUGIN_STATUSMESSAGE_EXPORT StatusMessage : public Plugin
16 {
17  Q_OBJECT
18  Q_DECLARE_PRIVATE(StatusMessage)
19 public:
23  StatusMessage(Application *parent);
24  virtual ~StatusMessage() override;
25 
29  QString sessionPrefix() const;
30 
34  void setSessionPrefix(const QString &sessionPrefix);
35 
40  QString tokenParam() const;
41 
46  void setTokenParam(const QString &tokenParam);
47 
52  QString statusMsgStashKey() const;
53 
58  void setStatusMsgStashKey(const QString &statusMsgStashKey);
59 
63  QString errorMgStashKey() const;
64 
69  void setErrorMgStashKey(const QString &errorMgStashKey);
70 
75  static void load(Context *c);
76 
80  static QString error(Context *c, const QString &msg);
81 
86  static ParamsMultiMap
87  errorQuery(Context *c, const QString &msg, ParamsMultiMap query = ParamsMultiMap());
88 
92  static QString status(Context *c, const QString &msg);
93 
98  static ParamsMultiMap
99  statusQuery(Context *c, const QString &msg, ParamsMultiMap query = ParamsMultiMap());
100 
101 protected:
105  virtual bool setup(Application *app) override;
106 
107  StatusMessagePrivate *d_ptr;
108 
109 private:
110  Q_PRIVATE_SLOT(d_func(), void _q_postFork(Application *))
111 };
112 
113 } // namespace Cutelyst
114 
115 #endif // CUTELYST_PLUGIN_STATUSMESSAGE
QMultiMap< QString, QString > ParamsMultiMap
The Cutelyst Context.
Definition: context.h:38
The Cutelyst namespace holds all public Cutelyst API.
Definition: Mainpage.dox:7
The Cutelyst Application.
Definition: application.h:42