/***************************************************************************
- * Copyright (C) 2005-2013 by the Quassel Project *
+ * Copyright (C) 2005-2018 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include "types.h"
class CoreSession;
-class InternalConnection;
-class RemoteConnection;
+class InternalPeer;
+class RemotePeer;
class QIODevice;
class SessionThread : public QThread
Q_OBJECT
public:
- SessionThread(UserId user, bool restoreState, QObject *parent = 0);
+ SessionThread(UserId user, bool restoreState, bool strictIdentEnabled, QObject *parent = 0);
~SessionThread();
void run();
void initialized();
void shutdown();
- void addRemoteClient(RemoteConnection *);
- void addInternalClient(InternalConnection *);
+ void addRemoteClient(RemotePeer *peer);
+ void addInternalClient(InternalPeer *peer);
private:
CoreSession *_session;
bool _sessionInitialized;
bool _restoreState;
+ /// Whether or not strict ident mode is enabled, locking users' idents to Quassel username
+ bool _strictIdentEnabled;
+
bool isSessionInitialized();
void addClientToSession(QObject *peer);
- void addRemoteClientToSession(RemoteConnection *connection);
- void addInternalClientToSession(InternalConnection *client);
+ void addRemoteClientToSession(RemotePeer *remotePeer);
+ void addInternalClientToSession(InternalPeer *internalPeer);
};