Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
} else {
// Open AnyBar
exec('open --hide --background -a AnyBar', (error, stdout, stderror) => {
if (error) {
console.error(`
You have the ember-cli-anybar addon installed but have
not yet installed the AnyBar application. Please run:
brew cask install anybar
`)
}
})
// Back to white on exit
captureExit.captureExit()
captureExit.onExit(function resetAnyBar () {
clearInterval(pulser)
return anybar('white')
})
module.exports = {
name: 'ember-cli-anybar',
preBuild () {
pulse()
},
buildError: function buildError () {
clearInterval(pulser)
anybar('red')
},
captureExit.captureExit();
// define/clear some local state. The properties will be initialized
// in _handleClientAndCheck(). This is also called again in _onEnd when
// trying to reestablish connection to watchman.
this._clearLocalVars();
this._watchmanBinaryPath = watchmanBinaryPath;
this._backoffTimes = this._setupBackoffTimes();
this._clientListeners = null; // direct listeners from here to watchman.Client.
// Define a handler for if somehow the Node process gets interrupted. We need to
// close down the watchman.Client, if we have one.
captureExit.onExit(() => this._clearLocalVars());
}
constructor(watchmanBinaryPath) {
captureExit.captureExit();
// define/clear some local state. The properties will be initialized
// in _handleClientAndCheck(). This is also called again in _onEnd when
// trying to reestablish connection to watchman.
this._clearLocalVars();
this._watchmanBinaryPath = watchmanBinaryPath;
this._backoffTimes = this._setupBackoffTimes();
this._clientListeners = null; // direct listeners from here to watchman.Client.
// Define a handler for if somehow the Node process gets interrupted. We need to
// close down the watchman.Client, if we have one.
captureExit.onExit(() => this._clearLocalVars());
}
trapSignals() {
this._boundOnSIGINT = this.onSIGINT.bind(this);
this._boundOnSIGTERM = this.onSIGTERM.bind(this);
this._boundOnMessage = this.onMessage.bind(this);
this._boundCleanup = this.cleanup.bind(this);
process.on('SIGINT', this._boundOnSIGINT);
process.on('SIGTERM', this._boundOnSIGTERM);
process.on('message', this._boundOnMessage);
exit.onExit(this._boundCleanup);
if (/^win/.test(process.platform)) {
this.trapWindowsSignals();
}
}
addHandler(cb) {
if (!_process) {
throw new Error('process is not captured');
}
let index = handlers.indexOf(cb);
if (index > -1) {
return;
}
if (handlers.length === 0) {
setupSignalsTrap();
}
handlers.push(cb);
captureExit.onExit(cb);
},
removeHandler(cb) {
let index = handlers.indexOf(cb);
if (index < 0) {
return;
}
handlers.splice(index, 1);
captureExit.offExit(cb);
if (handlers.length === 0) {
teardownSignalsTrap();
}
},
};
_cleanupSignals() {
process.removeListener('SIGINT', this._boundOnSIGINT);
process.removeListener('SIGTERM', this._boundOnSIGTERM);
process.removeListener('message', this._boundOnMessage);
exit.offExit(this._boundCleanup);
if (/^win/.test(process.platform)) {
this._cleanupWindowsSignals();
}
}