![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
amqplib-auto-recovery
Advanced tools
Automatic connection recovery for amqplib. Node.js 6+.
npm install amqplib-auto-recovery --save
Wrap amqp client with auto recovery decorator (like shown below).
API stays absolutely the same as before *. The only difference is that amqp.connect(...)
's callback
will be executed each time (re)connection is attempted (exponential backoff is turned on by default).
const amqp = require('amqplib/callback_api');
const withAutoRecovery = require('amqplib-auto-recovery');
withAutoRecovery(amqp, {
// onError: (err) => { console.log(err.message) },
// isErrorUnrecoverable: (err) => false
// for more see src/amqplib-auto-recovery.js
}).connect("amqp://localhost", (err, con) => {
if (err) {
console.error(`Failed to connect (${err.message})`);
return
}
console.info("Connection established");
con.createChannel((err, ch) => {
if (err) {
console.error(`Failed to create a channel (${err.message})`);
return
}
ch.prefetch(1, false);
ch.assertQueue(consumer.queue, {durable: true});
ch.consume(consumer.queue, (msg) => {
// handle msg
});
});
});
* with exception to closed
property (added to connection/channel), which
might come in handy in situations like:
// ...
ch.consume(consumer.queue, (msg) => {
// simulating a long-running task
setTimeout(() => {
if (ch.closed) {
console.log("Channel had been closed before task was completed");
return
}
ch.ack(msg); // throws IllegalOperationError if channel is closed
// note that this is a standard amqplib behavior and not something
// introduced by amqplib-auto-recovery
}, 5000);
});
FAQs
Automatic connection recovery for amqplib
The npm package amqplib-auto-recovery receives a total of 59 weekly downloads. As such, amqplib-auto-recovery popularity was classified as not popular.
We found that amqplib-auto-recovery demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.