#include <QFile>
#include <QDateTime>
#include <QHostAddress>
+#include <QMutex>
+#include "quassel.h"
#include "coreidentity.h"
-#include <QDebug>
class OidentdConfigGenerator : public QObject
{
public:
explicit OidentdConfigGenerator(QObject *parent = 0);
- QDir configDir;
- QString configFileName;
-
signals:
public slots:
bool addSocket(const CoreIdentity *identity, const QHostAddress &localAddress, quint16 localPort, const QHostAddress &peerAddress, quint16 peerPort);
+ bool removeSocket(const CoreIdentity *identity, const QHostAddress &localAddress, quint16 localPort, const QHostAddress &peerAddress, quint16 peerPort);
private:
bool init();
bool writeConfig();
- bool parseConfig(bool stripQuasselStanzas = false);
- bool checkLine(const QByteArray &line);
+ bool parseConfig(bool keepQuasselStanzas = true);
+ bool lineByUs(const QByteArray &line);
bool _initialized;
QDateTime _lastSync;
QFile *_configFile;
QByteArray _config;
+ // Mutex isn't strictly necessary at the moment, since with the current invocation in Core only one instance at a time exists
+ QMutex _mutex;
+ QDir configDir;
+ QString configFileName;
+ QString configPath;
QString configTag;
-
- QRegExp quasselStanza;
+ QRegExp quasselStanzaRx;
+ QString quasselStanzaTemplate;
};
#endif // OIDENTDCONFIGGENERATOR_H