/***************************************************************************
- * Copyright (C) 2005-2012 by the Quassel Project *
+ * Copyright (C) 2005-2013 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#endif
#include "coreaccount.h"
+#include "remotepeer.h"
#include "types.h"
class CoreAccountModel;
+class InternalPeer;
class Network;
+class Peer;
class SignalProxy;
class CoreConnection : public QObject
void coreSetupFailed(const QString &error);
void startInternalCore();
- void connectToInternalCore(SignalProxy *proxy);
+ void connectToInternalCore(InternalPeer *connection);
// These signals MUST be handled synchronously!
void userAuthenticationRequired(CoreAccount *, bool *valid, const QString &errorMessage = QString());
void socketStateChanged(QAbstractSocket::SocketState);
void coreSocketError(QAbstractSocket::SocketError);
- void coreHasData();
+ void coreHasData(const QVariant &item);
void coreSocketConnected();
void coreSocketDisconnected();
CoreAccount _account;
QVariantMap _coreMsgBuffer;
- QPointer<QAbstractSocket> _socket;
- quint32 _blockSize;
+ QPointer<QTcpSocket> _socket;
+ QPointer<Peer> _peer;
ConnectionState _state;
QTimer _reconnectTimer;
QString _coreInfoString(const QVariantMap &);
bool _wasReconnect;
bool _requestedDisconnect;
+ bool _resetting;
inline CoreAccountModel *accountModel() const;