Skip to content

Commit ff3d5b6

Browse files
committed
merge bug23659 into default
2 parents 109d5ce + 0a4c9c5 commit ff3d5b6

File tree

17 files changed

+220
-104
lines changed

17 files changed

+220
-104
lines changed

docs/wikipages/data.ApiGen.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -359,10 +359,10 @@ of the interaction style of the command. The [code AmqpNowaitArgument]
359359
attribute should be used for this purpose:
360360

361361
@code java
362-
void ExchangeDelete(string exchange,
363-
bool ifUnused,
364-
[AmqpNowaitArgument(null)]
365-
bool nowait);
362+
void _Private_ExchangeDelete(string exchange,
363+
bool ifUnused,
364+
[AmqpNowaitArgument(null)]
365+
bool nowait);
366366

367367
When [code AmqpNowaitArgument] decorates a particular parameter, if
368368
that parameter is true at runtime, the generated code will send the

docs/wikipages/data.ApiOverview.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ exchange and a queue, then binds them together.
186186
@code java
187187
channel.ExchangeDeclare(exchangeName, ExchangeType.Direct);
188188
channel.QueueDeclare(queueName, false, false, false, null);
189-
channel.QueueBind(queueName, exchangeName, routingKey, false, null);
189+
channel.QueueBind(queueName, exchangeName, routingKey, null);
190190

191191
This will actively declare the following objects:
192192

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

Lines changed: 102 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -208,37 +208,42 @@ void ExchangeDeclare(string exchange,
208208
void ExchangeDeclarePassive(string exchange);
209209

210210
///<summary>(Spec method) Delete an exchange.</summary>
211-
void ExchangeDelete(string exchange,
212-
bool ifUnused,
213-
[AmqpNowaitArgument(null)]
214-
bool nowait);
211+
[AmqpMethodDoNotImplement(null)]
212+
void ExchangeDelete(string exchange, bool ifUnused);
215213

216214
///<summary>(Spec method) Delete an exchange.</summary>
215+
///<remarks>
216+
/// The exchange is deleted regardless of any queue bindings.
217+
///</remarks>
217218
[AmqpMethodDoNotImplement(null)]
218219
void ExchangeDelete(string exchange);
219220

220-
///<summary>(Spec method) Bind an exchange to an exchange.</summary>
221-
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_8"),
222-
AmqpUnsupported("RabbitMQ.Client.Framing.v0_8qpid"),
223-
AmqpUnsupported("RabbitMQ.Client.Framing.v0_9")]
221+
///<summary>(Extension method) Bind an exchange to an exchange.</summary>
222+
[AmqpMethodDoNotImplement(null)]
224223
void ExchangeBind(string destination,
225224
string source,
226225
string routingKey,
227-
[AmqpNowaitArgument(null)]
228-
bool nowait,
229226
IDictionary arguments);
230227

231-
///<summary>(Spec method) Unbind an exchange from an exchange.</summary>
232-
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_8"),
233-
AmqpUnsupported("RabbitMQ.Client.Framing.v0_8qpid"),
234-
AmqpUnsupported("RabbitMQ.Client.Framing.v0_9")]
228+
///<summary>(Extension method) Bind an exchange to an exchange.</summary>
229+
[AmqpMethodDoNotImplement(null)]
230+
void ExchangeBind(string destination,
231+
string source,
232+
string routingKey);
233+
234+
///<summary>(Extension method) Unbind an exchange from an exchange.</summary>
235+
[AmqpMethodDoNotImplement(null)]
235236
void ExchangeUnbind(string destination,
236237
string source,
237238
string routingKey,
238-
[AmqpNowaitArgument(null)]
239-
bool nowait,
240239
IDictionary arguments);
241240

241+
///<summary>(Extension method) Unbind an exchange from an exchange.</summary>
242+
[AmqpMethodDoNotImplement(null)]
243+
void ExchangeUnbind(string destination,
244+
string source,
245+
string routingKey);
246+
242247
///<summary>(Spec method) Declare a queue.</summary>
243248
///<remarks>
244249
///The queue is declared non-passive, non-durable,
@@ -264,13 +269,18 @@ string QueueDeclare(string queue, bool durable, bool exclusive,
264269
bool autoDelete, IDictionary arguments);
265270

266271
///<summary>(Spec method) Bind a queue to an exchange.</summary>
272+
[AmqpMethodDoNotImplement(null)]
267273
void QueueBind(string queue,
268274
string exchange,
269275
string routingKey,
270-
[AmqpNowaitArgument(null)]
271-
bool nowait,
272276
IDictionary arguments);
273277

278+
///<summary>(Spec method) Bind a queue to an exchange.</summary>
279+
[AmqpMethodDoNotImplement(null)]
280+
void QueueBind(string queue,
281+
string exchange,
282+
string routingKey);
283+
274284
///<summary>(Spec method) Unbind a queue from an exchange.</summary>
275285
///<remarks>
276286
///Note: This operation is only supported when communicating
@@ -286,26 +296,21 @@ void QueueUnbind(string queue,
286296

287297
///<summary>(Spec method) Purge a queue of messages.</summary>
288298
///<remarks>
289-
///Returns the number of messages purged. If nowait is
290-
///specified, returns <code>uint.MaxValue</code>.
299+
///Returns the number of messages purged.
291300
///</remarks>
292-
[return: AmqpFieldMapping(null, "messageCount")]
293-
uint QueuePurge(string queue,
294-
[AmqpNowaitArgument(null, "0xFFFFFFFF")]
295-
bool nowait);
301+
[AmqpMethodDoNotImplement(null)]
302+
uint QueuePurge(string queue);
296303

297304
///<summary>(Spec method) Delete a queue.</summary>
298305
///<remarks>
299306
///Returns the number of messages purged during queue
300-
///deletion. If nowait is specified, returns
307+
///deletion.
301308
///<code>uint.MaxValue</code>.
302309
///</remarks>
303-
[return: AmqpFieldMapping(null, "messageCount")]
310+
[AmqpMethodDoNotImplement(null)]
304311
uint QueueDelete(string queue,
305312
bool ifUnused,
306-
bool ifEmpty,
307-
[AmqpNowaitArgument(null, "0xFFFFFFFF")]
308-
bool nowait);
313+
bool ifEmpty);
309314

310315
///<summary>(Spec method) Delete a queue.</summary>
311316
///<remarks>
@@ -322,14 +327,6 @@ uint QueueDelete(string queue,
322327
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_9")]
323328
void ConfirmSelect();
324329

325-
///<summary>Enable publisher acknowledgements.</summary>
326-
[AmqpMethodDoNotImplement(null)]
327-
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_8qpid")]
328-
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_8")]
329-
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_9")]
330-
void ConfirmSelect(bool nowait);
331-
332-
333330
///<summary>Start a Basic content-class consumer.</summary>
334331
///<remarks>
335332
///The consumer is started with noAck=false (i.e. BasicAck is required),
@@ -338,7 +335,7 @@ uint QueueDelete(string queue,
338335
///</remarks>
339336
[AmqpMethodDoNotImplement(null)]
340337
string BasicConsume(string queue,
341-
IDictionary arguments,
338+
bool noAck,
342339
IBasicConsumer consumer);
343340

344341
///<summary>Start a Basic content-class consumer.</summary>
@@ -350,7 +347,7 @@ string BasicConsume(string queue,
350347
[AmqpMethodDoNotImplement(null)]
351348
string BasicConsume(string queue,
352349
bool noAck,
353-
IDictionary arguments,
350+
string consumerTag,
354351
IBasicConsumer consumer);
355352

356353
///<summary>Start a Basic content-class consumer.</summary>
@@ -611,6 +608,43 @@ void _Private_ExchangeDeclare(string exchange,
611608
bool nowait,
612609
IDictionary arguments);
613610

611+
///<summary>Used to send a Exchange.Delete method. Called by the
612+
///public delete method.
613+
///</summary>
614+
[AmqpMethodMapping(null, "exchange", "delete")]
615+
void _Private_ExchangeDelete(string exchange,
616+
bool ifUnused,
617+
[AmqpNowaitArgument(null)]
618+
bool nowait);
619+
620+
///<summary>Used to send a Exchange.Bind method. Called by the
621+
///public bind method.
622+
///</summary>
623+
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_8"),
624+
AmqpUnsupported("RabbitMQ.Client.Framing.v0_8qpid"),
625+
AmqpUnsupported("RabbitMQ.Client.Framing.v0_9")]
626+
[AmqpMethodMapping(null, "exchange", "bind")]
627+
void _Private_ExchangeBind(string destination,
628+
string source,
629+
string routingKey,
630+
[AmqpNowaitArgument(null)]
631+
bool nowait,
632+
IDictionary arguments);
633+
634+
///<summary>Used to send a Exchange.Unbind method. Called by the
635+
///public unbind method.
636+
///</summary>
637+
[AmqpUnsupported("RabbitMQ.Client.Framing.v0_8"),
638+
AmqpUnsupported("RabbitMQ.Client.Framing.v0_8qpid"),
639+
AmqpUnsupported("RabbitMQ.Client.Framing.v0_9")]
640+
[AmqpMethodMapping(null, "exchange", "unbind")]
641+
void _Private_ExchangeUnbind(string destination,
642+
string source,
643+
string routingKey,
644+
[AmqpNowaitArgument(null)]
645+
bool nowait,
646+
IDictionary arguments);
647+
614648
///<summary>Used to send a Queue.Declare method. Called by the
615649
///public declare method.</summary>
616650
[AmqpMethodMapping(null, "queue", "declare")]
@@ -624,6 +658,35 @@ string _Private_QueueDeclare(string queue,
624658
bool nowait,
625659
IDictionary arguments);
626660

661+
///<summary>Used to send a Queue.Bind method. Called by the
662+
///public bind method.</summary>
663+
[AmqpMethodMapping(null, "queue", "bind")]
664+
void _Private_QueueBind(string queue,
665+
string exchange,
666+
string routingKey,
667+
[AmqpNowaitArgument(null)]
668+
bool nowait,
669+
IDictionary arguments);
670+
671+
///<summary>Used to send a Queue.Purge method. Called by the
672+
///public purge method.</summary>
673+
[return: AmqpFieldMapping(null, "messageCount")]
674+
[AmqpMethodMapping(null, "queue", "purge")]
675+
uint _Private_QueuePurge(string queue,
676+
[AmqpNowaitArgument(null, "0xFFFFFFFF")]
677+
bool nowait);
678+
679+
680+
///<summary>Used to send a Queue.Delete method. Called by the
681+
///public delete method.</summary>
682+
[AmqpMethodMapping(null, "queue", "delete")]
683+
[return: AmqpFieldMapping(null, "messageCount")]
684+
uint _Private_QueueDelete(string queue,
685+
bool ifUnused,
686+
bool ifEmpty,
687+
[AmqpNowaitArgument(null, "0xFFFFFFFF")]
688+
bool nowait);
689+
627690
///<summary>Used to send a Basic.Publish method. Called by the
628691
///public publish method after potential null-reference issues
629692
///have been rectified.</summary>

0 commit comments

Comments
 (0)