signon  8.42
signonauthsessionadaptor.h
Go to the documentation of this file.
1 /*
2  * This file is part of signon
3  *
4  * Copyright (C) 2009-2010 Nokia Corporation.
5  * Copyright (C) 2012 Canonical Ltd.
6  *
7  * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public License
11  * version 2.1 as published by the Free Software Foundation.
12  *
13  * This library is distributed in the hope that it will be useful, but
14  * WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
21  * 02110-1301 USA
22  */
23 #ifndef SIGNONAUTHSESSIONADAPTOR_H_
24 #define SIGNONAUTHSESSIONADAPTOR_H_
25 
26 #include <QtCore>
27 #include <QtDBus>
28 
29 #include "signond-common.h"
30 #include "signonauthsession.h"
31 
32 namespace SignonDaemonNS {
33 
34 class SignonAuthSessionAdaptor: public QDBusAbstractAdaptor
35 {
36  Q_OBJECT
37  Q_CLASSINFO("D-Bus Interface",
38  "com.google.code.AccountsSSO.SingleSignOn.AuthSession")
39 
40 public:
42  virtual ~SignonAuthSessionAdaptor();
43 
44  inline SignonAuthSession *parent() const {
45  return static_cast<SignonAuthSession *>(QObject::parent());
46  }
47 
48 private:
49  void errorReply(const QString &name, const QString &message);
50 
51 public Q_SLOTS:
52  QStringList queryAvailableMechanisms(const QStringList &wantedMechanisms);
53  QVariantMap process(const QVariantMap &sessionDataVa,
54  const QString &mechanism);
55 
56  Q_NOREPLY void cancel();
57  Q_NOREPLY void setId(quint32 id);
58  Q_NOREPLY void objectUnref();
59 
60 Q_SIGNALS:
61  void stateChanged(int state, const QString &message);
62  void unregistered();
63 };
64 
65 } //namespace SignonDaemonNS
66 
67 #endif /* SIGNONAUTHSESSIONADAPTOR_H_ */