go-rabbitmq-utils, v1.1
Posted on

The library that provides utility entities for working with RabbitMQ.
Checking of the queue name used in the RabbitMQ client operations based on the declared queues and extending of auxiliary message fields with a message ID and message timestamp.
Change Log
- client:
- options (will be applied on connecting):
- message ID generator for them automatic generating;
- operations:
- with messages:
- message publishing:
- check the specified queue name based on the declared queues;
- setting of auxiliary message fields:
- setting of a message ID:
- receiving of a custom message ID (optionally);
- automatic generating of a message ID (optionally);
- setting of a message timestamp;
- setting of a message ID:
- starting of message consuming:
- check the specified queue name based on the declared queues;
- cancelling of message consuming:
- check the specified queue name based on the declared queues.
- message publishing:
- with messages:
- options (will be applied on connecting):
Features
- client:
- options (will be applied on connecting):
- maximal queue size (optionally);
- queues for declaring:
- will survive server restarts and remain without consumers;
- message ID generator for them automatic generating;
- operations:
- with a connection:
- opening;
- closing;
- with messages:
- message publishing:
- check the specified queue name based on the declared queues;
- automatic marshalling of a message data to JSON;
- setting of auxiliary message fields:
- setting of a message ID:
- receiving of a custom message ID (optionally);
- automatic generating of a message ID (optionally);
- setting of a message timestamp;
- setting of a message ID:
- starting of message consuming:
- check the specified queue name based on the declared queues;
- automatic generating of a consumer name;
- cancelling of message consuming:
- check the specified queue name based on the declared queues;
- automatic generating of a consumer name;
- message publishing:
- with a connection:
- options (will be applied on connecting):
- message consumer:
- arguments:
- client;
- queue name;
- outer message handler;
- operations:
- message consuming:
- starting;
- cancelling;
- message handling:
- support of concurrent handling;
- message consuming:
- arguments:
- wrappers for an outer message handler:
- acknowledger:
- processing on success:
- acknowledging of the message;
- logging of the success fact;
- processing on failure:
- rejecting of the message:
- with once message handling;
- with twice message handling (i.e. once requeue);
- logging of the error;
- rejecting of the message:
- processing on success:
- JSON message handler:
- automatical creating of a receiver for a message data by its specified type;
- unmarshalling of a message data from JSON to the created receiver.
- acknowledger:
Repository
Link: https://github.com/thewizardplusplus/go-rabbitmq-utils/tree/v1.1.
Content: code.
License: MIT.