Skip to content

Commit 3718c6e

Browse files
author
Emile Joubert
committed
Basic.recover and async recover
Amend the specification to agree with the description This makes basic.recover synchronous for all protocols
1 parent fe05d16 commit 3718c6e

File tree

6 files changed

+33
-6
lines changed

6 files changed

+33
-6
lines changed

docs/specs/amqp0-8.stripped.xml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -456,10 +456,18 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
456456
<field name="delivery tag" domain="delivery tag"/>
457457
<field name="requeue" type="bit"/>
458458
</method>
459-
<method name="recover" index="100">
459+
<method name="recover-async" index="100">
460460
<chassis name="server" implement="MUST"/>
461461
<field name="requeue" type="bit"/>
462462
</method>
463+
<method name="recover" synchronous="1" index="110">
464+
<response name="recover-ok"/>
465+
<chassis name="server" implement="MAY"/>
466+
<field name="requeue" domain="bit"/>
467+
</method>
468+
<method name="recover-ok" index="111">
469+
<chassis name="client" implement="MAY"/>
470+
</method>
463471
</class>
464472
<class name="file" handler="channel" index="70">
465473
<chassis name="server" implement="MAY"/>

docs/specs/amqp0-9-1.stripped.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,8 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
423423
<chassis name="server" implement="MAY"/>
424424
<field name="requeue" domain="bit"/>
425425
</method>
426-
<method name="recover" index="110">
426+
<method name="recover" synchronous="1" index="110">
427+
<response name="recover-ok"/>
427428
<chassis name="server" implement="MUST"/>
428429
<field name="requeue" domain="bit"/>
429430
</method>

docs/specs/amqp0-9.stripped.xml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -486,10 +486,18 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
486486
<field name="delivery-tag" domain="delivery-tag"/>
487487
<field name="requeue" domain="bit"/>
488488
</method>
489-
<method name="recover" index="100">
489+
<method name="recover-async" index="100">
490490
<chassis name="server" implement="MUST"/>
491491
<field name="requeue" domain="bit"/>
492492
</method>
493+
<method name="recover" synchronous="1" index="110">
494+
<response name="recover-ok"/>
495+
<chassis name="server" implement="MAY"/>
496+
<field name="requeue" domain="bit"/>
497+
</method>
498+
<method name="recover-ok" index="111">
499+
<chassis name="client" implement="MAY"/>
500+
</method>
493501
</class>
494502
<class name="file" handler="channel" index="70">
495503
<chassis name="server" implement="MAY"/>

docs/specs/qpid-amqp.0-8.stripped.xml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,13 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
454454
<field name="delivery tag" domain="delivery tag"/>
455455
<field name="requeue" type="bit"/>
456456
</method>
457-
<method name="recover" index="100">
457+
<method name="recover-async" index="100">
458+
<chassis name="server" implement="MUST"/>
459+
<field name="requeue" type="bit"/>
460+
<response name="recover-ok"/>
461+
</method>
462+
<method name="recover" index="110">
463+
<response name="recover-ok"/>
458464
<chassis name="server" implement="MUST"/>
459465
<field name="requeue" type="bit"/>
460466
<response name="recover-ok"/>

projects/client/RabbitMQ.Client/src/client/api/IModel.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,9 @@ void BasicReject(ulong deliveryTag,
366366
///<summary>(Spec method)</summary>
367367
void BasicRecover(bool requeue);
368368

369+
///<summary>(Spec method)</summary>
370+
void BasicRecoverAsync(bool requeue);
371+
369372
///<summary>(Spec method) Retrieve an individual message, if
370373
///one is available; returns null if the server answers that
371374
///no messages are currently available. See also

projects/client/RabbitMQ.Client/src/client/impl/ModelBase.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,8 @@ public event CallbackExceptionEventHandler CallbackException
146146
m_callbackException -= value;
147147
}
148148
}
149-
}
150-
149+
}
150+
151151
public IBasicConsumer DefaultConsumer { get; set; }
152152

153153
public ISession m_session;
@@ -801,6 +801,7 @@ public abstract void BasicReject(ulong deliveryTag,
801801
bool requeue);
802802

803803
public abstract void BasicRecover(bool requeue);
804+
public abstract void BasicRecoverAsync(bool requeue);
804805

805806
public abstract void TxSelect();
806807
public abstract void TxCommit();

0 commit comments

Comments
 (0)