Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | /* istanbul ignore file */
'use strict';
const { initialize, isEnabled, getFeatureToggleDefinitions } = require('unleash-client');
const Logger = use('Logger');
class Unleash {
constructor(Config) {
this.Config = Config;
this.instance = null;
}
initialize() {
this.instance = initialize({
url: this.Config.get('unleash.server'),
appName: this.Config.get('app.name'),
});
/** Optional events */
this.instance.on('error', console.error); // eslint-disable-line no-console
this.instance.on('warn', console.warn); // eslint-disable-line no-console
this.instance.on('ready', console.log); // eslint-disable-line no-console
/** Metric Hooks */
this.instance.on('registered', (clientData) => {
Logger.info('registered %o', clientData);
});
this.instance.on('sent', (payload) => Logger.info('metrics bucket/payload sent %o', payload));
this.instance.on('count', (name, enabled) =>
Logger.info(`isEnabled(${name}) returned ${enabled}`),
);
}
isEnabled(featureName, context) {
return isEnabled(featureName, context);
}
getFeatureToggleDefinitions() {
return getFeatureToggleDefinitions();
}
}
module.exports = Unleash;
|