28 #ifndef AUTHPLUGINIF_H 29 #define AUTHPLUGINIF_H 31 #include <QtCore/qobject.h> 32 #include <QtCore/qpointer.h> 33 #include <QtCore/qplugin.h> 34 #include <QtCore/qstringlist.h> 36 #include <QVariantMap> 37 #include <SignOn/sessiondata.h> 38 #include <SignOn/uisessiondata.h> 39 #include <SignOn/signonerror.h> 50 enum AuthPluginState {
51 PLUGIN_STATE_NONE = 0,
52 PLUGIN_STATE_RESOLVING,
53 PLUGIN_STATE_CONNECTING,
57 PLUGIN_STATE_REFRESHING,
58 PLUGIN_STATE_CANCELING,
67 #define SIGNON_PLUGIN_INSTANCE(pluginclass) \ 69 static AuthPluginInterface *_instance = 0; \ 71 _instance = static_cast<AuthPluginInterface *>(new pluginclass()); \ 75 #define SIGNON_DECL_AUTH_PLUGIN(pluginclass) \ 76 extern "C" AuthPluginInterface *auth_plugin_instance() \ 77 SIGNON_PLUGIN_INSTANCE(pluginclass) 89 { qRegisterMetaType<SignOn::Error>(
"SignOn::Error"); }
101 virtual QString
type()
const = 0;
139 virtual void process(
const SignOn::SessionData &inData,
140 const QString &mechanism = QString()) = 0;
149 void result(
const SignOn::SessionData &data);
161 void store(
const SignOn::SessionData &data);
170 void error(
const SignOn::Error &err);
203 const QString &message = QString());
240 "com.nokia.SingleSignOn.PluginInterface/1.3")
242 #endif // AUTHPLUGINIF_H virtual QStringList mechanisms() const =0
Gets the list of supported mechanisms.
void statusChanged(const AuthPluginState state, const QString &message=QString())
Emitted to report status of authentication process to signond for informing client application...
Data container to hold values for authentication session.
void userActionRequired(const SignOn::UiSessionData &data)
Emitted when authentication process need to interact with user.
virtual void abort()
Requests to abort the process.
void result(const SignOn::SessionData &data)
Emitted when authentication process has been completed for given data and there are no errors...
virtual void refresh(const SignOn::UiSessionData &data)
Refreshes given session.
void store(const SignOn::SessionData &data)
Emitted when authentication process want to store session data parameters for later use...
virtual void cancel()
Requests to cancel the process.
void error(const SignOn::Error &err)
Emitted when authentication process has been completed for given data and resulting an error...
virtual ~AuthPluginInterface()
Destructor.
virtual void userActionFinished(const SignOn::UiSessionData &data)
User interaction completed.
virtual QString type() const =0
Gets the type of the plugin.
virtual void process(const SignOn::SessionData &inData, const QString &mechanism=QString())=0
Process authentication.
void refreshed(const SignOn::UiSessionData &data)
Emitted when authentication process has completed refresh request.