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