provide purged signal, other small cleanups
This commit is contained in:
parent
478597063c
commit
46e974aeb8
|
|
@ -246,7 +246,6 @@ namespace Frame
|
|||
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* @brief Class for working with content frames.
|
||||
* @detailed Implement main methods for serialize and deserialize raw content frame data.
|
||||
|
|
@ -260,8 +259,8 @@ namespace Frame
|
|||
*
|
||||
* | Property | Description |
|
||||
* | ---------- | ----------- |
|
||||
* |cpContentType | MIME content type |
|
||||
* | ocpContentEncoding | MIME content encoding |
|
||||
* | cpContentType | MIME content type |
|
||||
* | cpContentEncoding | MIME content encoding |
|
||||
* | cpHeaders | message header field table |
|
||||
* | cpDeliveryMode| nonpersistent (1) or persistent (2) |
|
||||
* | cpPriority | message priority, 0 to 9 |
|
||||
|
|
|
|||
|
|
@ -44,9 +44,7 @@ bool QueuePrivate::_q_method(const Frame::Method &frame)
|
|||
unbindOk(frame);
|
||||
break;
|
||||
case miPurgeOk:
|
||||
deleteOk(frame);
|
||||
break;
|
||||
default:
|
||||
purgeOk(frame);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -67,9 +65,8 @@ bool QueuePrivate::_q_method(const Frame::Method &frame)
|
|||
case bmGetEmpty:
|
||||
Q_EMIT q->empty();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -132,10 +129,24 @@ void QueuePrivate::declareOk(const Frame::Method &frame)
|
|||
Q_EMIT q->declared();
|
||||
}
|
||||
|
||||
void QueuePrivate::purgeOk(const Frame::Method &frame)
|
||||
{
|
||||
Q_Q(Queue);
|
||||
qAmqpDebug() << "purged queue: " << name;
|
||||
|
||||
QByteArray data = frame.arguments();
|
||||
QDataStream stream(&data, QIODevice::ReadOnly);
|
||||
|
||||
qint32 messageCount = 0;
|
||||
stream >> messageCount;
|
||||
|
||||
Q_EMIT q->purged(messageCount);
|
||||
}
|
||||
|
||||
void QueuePrivate::deleteOk(const Frame::Method &frame)
|
||||
{
|
||||
Q_Q(Queue);
|
||||
qAmqpDebug() << "Deleted or purged queue: " << name;
|
||||
qAmqpDebug() << "deleted queue: " << name;
|
||||
declared = false;
|
||||
|
||||
QByteArray data = frame.arguments();
|
||||
|
|
@ -291,6 +302,11 @@ void Queue::declare(int options)
|
|||
d->declare();
|
||||
}
|
||||
|
||||
void Queue::forceRemove()
|
||||
{
|
||||
remove(0);
|
||||
}
|
||||
|
||||
void Queue::remove(int options)
|
||||
{
|
||||
Q_D(Queue);
|
||||
|
|
@ -420,7 +436,7 @@ void Queue::consume(int options)
|
|||
Frame::writeField('s', out, d->name);
|
||||
Frame::writeField('s', out, d->consumerTag);
|
||||
|
||||
out << qint8(options); // no-wait
|
||||
out << qint8(options);
|
||||
Frame::writeField('F', out, Frame::TableField());
|
||||
|
||||
frame.setArguments(arguments);
|
||||
|
|
|
|||
|
|
@ -68,6 +68,7 @@ public:
|
|||
void unbind(Exchange *exchange, const QString &key);
|
||||
void purge();
|
||||
void remove(int options = roIfUnused|roIfEmpty|roNoWait);
|
||||
void forceRemove();
|
||||
|
||||
// AMQP Basic
|
||||
void consume(int options = NoOptions);
|
||||
|
|
@ -81,6 +82,7 @@ Q_SIGNALS:
|
|||
void removed();
|
||||
void messageReceived();
|
||||
void empty();
|
||||
void purged(int messageCount);
|
||||
|
||||
protected:
|
||||
// reimp Channel
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ public:
|
|||
virtual void _q_body(const Frame::ContentBody &frame);
|
||||
void declareOk(const Frame::Method &frame);
|
||||
void deleteOk(const Frame::Method &frame);
|
||||
void purgeOk(const Frame::Method &frame);
|
||||
void bindOk(const Frame::Method &frame);
|
||||
void unbindOk(const Frame::Method &frame);
|
||||
void getOk(const Frame::Method &frame);
|
||||
|
|
|
|||
Loading…
Reference in New Issue