Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
}
const promise = service.remove(accessToken, { authenticated: true }).then(tokens => {
debug(`Successfully logged out socket with accessToken`, accessToken);
app.emit('logout', tokens, {
provider,
socket,
connection
});
return tokens;
});
// Clear logoutTimer.
lt.clearTimeout(logoutTimer);
handleSocketCallback(promise, callback);
} else if (typeof callback === 'function') {
return callback(null, {});
}
};
pendingAtRemoves--
if (err) conf.onError(err)
update()// check the schedule for the next
})
// emit the scheduled job
conf.onEvent(next.event)
}
if (conf.is_test_mode) {
// in test mode they manually trigger execution of currTimeout
currTimeout = onTime
} else {
// Execute the event by milliseconds from now.
// If it's in the past it will happen on the next tick
currTimeout = lt.setTimeout(onTime, next.at.getTime() - Date.now())
}
})
}
function cancelInvocation(invocation) {
var idx = invocations.indexOf(invocation);
if (idx > -1) {
invocations.splice(idx, 1);
if (invocation.timerID !== null) {
lt.clearTimeout(invocation.timerID);
}
if (currentInvocation === invocation) {
currentInvocation = null;
}
invocation.job.emit('canceled', invocation.fireDate);
prepareNextInvocation();
}
}
function schedule () {
var future = next()
var delta = Math.max(future.diff(moment()), 1000)
debug(name + ': next run in ' + ms(delta) +
' at ' + future.format('llll Z'))
if (timer) lt.clearTimeout(timer)
timer = lt.setTimeout(run, delta)
}
function runOnDate(date, job) {
var now = Date.now();
var then = date.getTime();
return lt.setTimeout(function() {
if (then > Date.now())
runOnDate(date, job);
else
job();
}, (then < now ? 0 : then - now));
}
function runOnDate(date, job) {
var now = Date.now();
var then = date.getTime();
return lt.setTimeout(function() {
if (then > Date.now())
runOnDate(date, job);
else
job();
}, (then < now ? 0 : then - now));
}
MemoryStore.prototype.reset = function (key, callback) {
key = this.options.prefix+key;
if (this.data[key] && this.data[key].timeout) {
longTimeout.clearTimeout(this.data[key].timeout);
}
delete this.data[key];
typeof callback == 'function' && callback(null);
};
MemoryStore.defaults = {
function prepareNextInvocation() {
if (invocations.length > 0 && currentInvocation !== invocations[0]) {
if (currentInvocation !== null) {
lt.clearTimeout(currentInvocation.timerID);
currentInvocation.timerID = null;
currentInvocation = null;
}
currentInvocation = invocations[0];
var job = currentInvocation.job;
var cinv = currentInvocation;
currentInvocation.timerID = runOnDate(currentInvocation.fireDate, function() {
currentInvocationFinished();
if (job.callback) {
job.callback();
}
if (cinv.recurrenceRule.recurs || cinv.recurrenceRule._endDate === null) {
var clearCurrTimeout = function () {
if (currTimeout && !conf.is_test_mode) {
lt.clearTimeout(currTimeout)
}
currTimeout = null
}
function prepareNextInvocation() {
if (invocations.length > 0 && currentInvocation !== invocations[0]) {
if (currentInvocation !== null) {
lt.clearTimeout(currentInvocation.timerID);
currentInvocation.timerID = null;
currentInvocation = null;
}
currentInvocation = invocations[0];
var job = currentInvocation.job;
var cinv = currentInvocation;
currentInvocation.timerID = runOnDate(currentInvocation.fireDate, function() {
currentInvocationFinished();
if (job.callback) {
job.callback();
}
if (cinv.recurrenceRule.recurs || cinv.recurrenceRule._endDate === null) {