Wt examples  4.10.4
Session.h
Go to the documentation of this file.
1 // This may look like C code, but it's really -*- C++ -*-
2 /*
3  * Copyright (C) 2011 Emweb bv, Herent, Belgium.
4  *
5  * See the LICENSE file for terms of use.
6  */
7 
8 #ifndef SESSION_H_
9 #define SESSION_H_
10 
11 #include <vector>
12 
13 #include <Wt/Auth/Login.h>
14 #include <Wt/Auth/Dbo/UserDatabase.h>
15 
16 #include <Wt/Dbo/Session.h>
17 #include <Wt/Dbo/ptr.h>
18 #include <Wt/Dbo/backend/Sqlite3.h>
19 
20 #include "User.h"
21 
23 
24 class Session
25 {
26 public:
27  static void configureAuth();
28 
29  Session();
30 
32  Wt::Auth::Login& login() { return login_; }
33 
34  std::vector<User> topUsers(int limit);
35 
36  /*
37  * These methods deal with the currently logged in user
38  */
39  std::string userName() const;
40  int findRanking();
41  void addToScore(int s);
42 
43  static const Wt::Auth::AuthService& auth();
45  static std::vector<const Wt::Auth::OAuthService *> oAuth();
46 
47 private:
49  std::unique_ptr<UserDatabase> users_;
51 
52  Wt::Dbo::ptr<User> user() const;
53 };
54 
55 #endif //SESSION_H_
static void configureAuth()
Definition: Session.C:65
static const Wt::Auth::AbstractPasswordService & passwordAuth()
Definition: Session.C:206
std::unique_ptr< UserDatabase > users_
Definition: Session.h:49
std::vector< User > topUsers(int limit)
Definition: Session.C:158
Wt::Auth::Login login_
Definition: Session.h:50
std::string userName() const
Definition: Session.C:136
Wt::Dbo::Session session_
Definition: Session.h:48
static const Wt::Auth::AuthService & auth()
Definition: Session.C:201
Wt::Dbo::ptr< User > user() const
Definition: Session.C:120
int findRanking()
Definition: Session.C:180
Wt::Auth::Login & login()
Definition: Session.h:32
Session()
Definition: Session.C:88
static std::vector< const Wt::Auth::OAuthService * > oAuth()
Definition: Session.C:211
Wt::Auth::AbstractUserDatabase & users()
Definition: Session.C:196
void addToScore(int s)
Definition: Session.C:144