cutelyst  5.0.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
authenticationuser.cpp
1 /*
2  * SPDX-FileCopyrightText: (C) 2013-2022 Daniel Nicoletti <dantti12@gmail.com>
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 #include "authenticationuser.h"
6 
7 #include <QDataStream>
8 #include <QDebug>
9 
10 using namespace Cutelyst;
11 using namespace Qt::StringLiterals;
12 
14 {
15 }
16 
18 {
19  setId(id);
20 }
21 
23 {
24 }
25 
27 {
28  return m_data.value(u"id"_s);
29 }
30 
32 {
33  m_data.insert(u"id"_s, id);
34 }
35 
37 {
38  return m_data.isEmpty();
39 }
40 
42 {
43  return m_data.value(u"authRealm"_s).toString();
44 }
45 
47 {
48  m_data.insert(u"authRealm"_s, authRealm);
49 }
50 
51 QDataStream &operator<<(QDataStream &out, const AuthenticationUser &user)
52 {
53  out << user.data();
54  return out;
55 }
56 
57 QDataStream &operator>>(QDataStream &in, AuthenticationUser &user)
58 {
59  QVariantMap map;
60  in >> map;
61  user.setData(map);
62  return in;
63 }
64 
65 QDebug operator<<(QDebug dbg, const AuthenticationUser &user)
66 {
67  const QVariantMap map = user.data();
68  const bool oldSetting = dbg.autoInsertSpaces();
69  dbg.nospace() << "AuthenticationUser(";
70  for (const auto &[key, value] : map.asKeyValueRange()) {
71  dbg << '(' << key << ", " << value << ')';
72  }
73  dbg << ')';
74  dbg.setAutoInsertSpaces(oldSetting);
75  return dbg.maybeSpace();
76 }
77 
78 #include "moc_authenticationuser.cpp"
void setId(const QVariant &id)
void setAutoInsertSpaces(bool b)
QDebug & nospace()
T value() const const
void setData(const QVariantMap &data)
The Cutelyst namespace holds all public Cutelyst API.
QDebug & maybeSpace()
Container for user data retrieved from an AuthenticationStore.
bool autoInsertSpaces() const const
void setAuthRealm(const QString &authRealm)