From 571edd3eabfc9f7ef7e53d00162bdb2626576afe Mon Sep 17 00:00:00 2001 From: fuCtor Date: Wed, 23 May 2012 20:53:32 -0700 Subject: [PATCH] --- QAMQP.vcproj | 34 +++++++++++++++++----------------- qamqp.pro | 35 ++++++----------------------------- src/main.cpp | 26 +++++++++++++++++++++++++- src/qamqp/amqp.cpp | 7 +++++++ src/qamqp/amqp.h | 7 +++++++ src/qamqp/amqp_network.cpp | 2 +- src/qamqp/qamqp.pri | 28 ++++++++++++++++++++++++++++ 7 files changed, 91 insertions(+), 48 deletions(-) create mode 100644 src/qamqp/qamqp.pri diff --git a/QAMQP.vcproj b/QAMQP.vcproj index 750acc6..bf7dc4d 100644 --- a/QAMQP.vcproj +++ b/QAMQP.vcproj @@ -40,7 +40,7 @@ @@ -229,7 +229,7 @@ @@ -248,7 +248,7 @@ @@ -259,7 +259,7 @@ @@ -278,7 +278,7 @@ @@ -289,7 +289,7 @@ @@ -308,7 +308,7 @@ @@ -319,7 +319,7 @@ @@ -350,7 +350,7 @@ @@ -361,7 +361,7 @@ @@ -384,7 +384,7 @@ @@ -395,7 +395,7 @@ @@ -414,7 +414,7 @@ @@ -425,7 +425,7 @@ @@ -650,7 +650,7 @@ /> #include "test.h" +void myMessageOutput(QtMsgType type, const char *msg) +{ + switch (type) { + case QtDebugMsg: + + //fprintf(stderr, "# %s\n", msg); + + break; + case QtWarningMsg: + fprintf(stderr, "%s\n", msg); + break; + case QtCriticalMsg: + fprintf(stderr, "Critical: %s\n", msg); + break; + case QtFatalMsg: + fprintf(stderr, "Fatal: %s\n", msg); + abort(); + default: + break; + } +} + int main(int argc, char *argv[]) { + qInstallMsgHandler(myMessageOutput); QCoreApplication a(argc, argv); - Test test; + + Test test[1]; return a.exec(); } diff --git a/src/qamqp/amqp.cpp b/src/qamqp/amqp.cpp index dfa9664..fb2cc65 100644 --- a/src/qamqp/amqp.cpp +++ b/src/qamqp/amqp.cpp @@ -57,6 +57,8 @@ void ClientPrivate::init(QObject * parent) QObject::connect(network_, SIGNAL(method(const QAMQP::Frame::Method &)), connection_, SLOT(_q_method(const QAMQP::Frame::Method &))); + + QObject::connect(connection_, SIGNAL(connected()), pq_func(), SIGNAL(connected())); } void ClientPrivate::init(QObject * parent, const QUrl & con) @@ -350,4 +352,9 @@ bool QAMQP::Client::autoReconnect() const void QAMQP::Client::setAutoReconnect( bool value ) { pd_func()->network_->setAutoReconnect(value); +} + +bool QAMQP::Client::isConnected() const +{ + return pd_func()->connection_->isConnected(); } \ No newline at end of file diff --git a/src/qamqp/amqp.h b/src/qamqp/amqp.h index 2f2417a..048d118 100644 --- a/src/qamqp/amqp.h +++ b/src/qamqp/amqp.h @@ -23,6 +23,7 @@ namespace QAMQP Q_PROPERTY(QString password READ password WRITE setPassword); Q_PROPERTY(bool ssl READ isSsl WRITE setSsl); Q_PROPERTY(bool autoReconnect READ autoReconnect WRITE setAutoReconnect); + Q_PROPERTY(bool connected READ isConnected ); Q_DISABLE_COPY(Client) @@ -73,6 +74,12 @@ namespace QAMQP bool autoReconnect() const; void setAutoReconnect(bool value); + bool isConnected() const; + + signals: + void connected(); + + protected: ClientPrivate * const pd_ptr; diff --git a/src/qamqp/amqp_network.cpp b/src/qamqp/amqp_network.cpp index 02c553a..31cd346 100644 --- a/src/qamqp/amqp_network.cpp +++ b/src/qamqp/amqp_network.cpp @@ -206,4 +206,4 @@ bool QAMQP::Network::autoReconnect() const void QAMQP::Network::setAutoReconnect( bool value ) { autoReconnect_ = value; -} \ No newline at end of file +} diff --git a/src/qamqp/qamqp.pri b/src/qamqp/qamqp.pri new file mode 100644 index 0000000..86db087 --- /dev/null +++ b/src/qamqp/qamqp.pri @@ -0,0 +1,28 @@ +QT += network + +DEPENDPATH += $$PWD + +HEADERS += $$PWD/amqp.h \ + $$PWD/amqp_authenticator.h \ + $$PWD/amqp_channel.h \ + $$PWD/amqp_channel_p.h \ + $$PWD/amqp_connection.h \ + $$PWD/amqp_connection_p.h \ + $$PWD/amqp_exchange.h \ + $$PWD/amqp_exchange_p.h \ + $$PWD/amqp_frame.h \ + $$PWD/amqp_message.h \ + $$PWD/amqp_network.h \ + $$PWD/amqp_p.h \ + $$PWD/amqp_queue.h \ + $$PWD/amqp_queue_p.h \ + $$PWD/amqp_global.h \ + +SOURCES += $$PWD/amqp.cpp \ + $$PWD/amqp_authenticator.cpp \ + $$PWD/amqp_channel.cpp \ + $$PWD/amqp_connection.cpp \ + $$PWD/amqp_exchange.cpp \ + $$PWD/amqp_frame.cpp \ + $$PWD/amqp_network.cpp \ + $$PWD/amqp_queue.cpp \ \ No newline at end of file