#61 fixed subscriptionDropped being called only once
Added subscribe-all-from-events sample to test
This commit is contained in:
parent
96145fbe49
commit
c1f17a7d99
50
samples/subscribe-all-from-events.js
Normal file
50
samples/subscribe-all-from-events.js
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
const client = require('../src/client');
|
||||||
|
//const client = require("node-eventstore-client");
|
||||||
|
|
||||||
|
const resolveLinkTos = true;
|
||||||
|
|
||||||
|
function resumeEvent(event) {
|
||||||
|
return [
|
||||||
|
event.originalEvent.eventType,
|
||||||
|
[event.originalEventNumber.toNumber(), event.originalStreamId].join('@'),
|
||||||
|
event.originalPosition
|
||||||
|
].join(" ")
|
||||||
|
}
|
||||||
|
|
||||||
|
const eventAppeared = (subscription, event) => console.log("Event received", resumeEvent(event));
|
||||||
|
|
||||||
|
const subscriptionDropped = (subscription, reason, error) => console.log("Subscription dropped", reason, error);
|
||||||
|
|
||||||
|
const libeProcessingStarted = () => console.log("Live processing started.");
|
||||||
|
|
||||||
|
const credentials = new client.UserCredentials("admin", "changeit");
|
||||||
|
|
||||||
|
const settings = {};
|
||||||
|
const endpoint = "tcp://localhost:1113";
|
||||||
|
const connection = client.createConnection(settings, endpoint);
|
||||||
|
|
||||||
|
connection.connect().catch(err => console.log("Connection failed", err));
|
||||||
|
|
||||||
|
connection.on('heartbeatInfo', heartbeatInfo =>
|
||||||
|
console.log('Heartbeat latency', heartbeatInfo.responseReceivedAt - heartbeatInfo.requestSentAt, 'ms')
|
||||||
|
);
|
||||||
|
|
||||||
|
connection.once("connected", tcpEndPoint => {
|
||||||
|
console.log(`Connected to eventstore at ${tcpEndPoint.host}:${tcpEndPoint.port}`);
|
||||||
|
connection.subscribeToAllFrom(
|
||||||
|
null,
|
||||||
|
resolveLinkTos,
|
||||||
|
eventAppeared,
|
||||||
|
libeProcessingStarted,
|
||||||
|
subscriptionDropped,
|
||||||
|
credentials
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
connection.on("error", error =>
|
||||||
|
console.log(`Error occurred on connection: ${error}`)
|
||||||
|
)
|
||||||
|
|
||||||
|
connection.on("closed", reason =>
|
||||||
|
console.log(`Connection closed, reason: ${reason}`)
|
||||||
|
)
|
|
@ -127,6 +127,8 @@ EventStoreCatchUpSubscription.prototype._runSubscription = function() {
|
||||||
|
|
||||||
var self = this;
|
var self = this;
|
||||||
this._stopped = false;
|
this._stopped = false;
|
||||||
|
this._isDropped = false;
|
||||||
|
this._dropData = null;
|
||||||
if (this._verbose) this._log.debug("Catch-up Subscription to %s: pulling events...", logStreamName);
|
if (this._verbose) this._log.debug("Catch-up Subscription to %s: pulling events...", logStreamName);
|
||||||
this._readEventsTill(this._connection, this._resolveLinkTos, this._userCredentials, null, null)
|
this._readEventsTill(this._connection, this._resolveLinkTos, this._userCredentials, null, null)
|
||||||
.then(function() {
|
.then(function() {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user