0.1.0 • Published 9 years ago
loggerage-promisify v0.1.0
loggerage-promisify
Only work with loggerage verson >=2.0
loggerage-promisify is a helper for promisify methods of loggerage package
How to use
$ npm install --save loggerage-promisifyor
$ yarn add loggerage-promisifyconst { Loggerage } = require("loggerage");
const promisify = require('loggerage-promisify')
const logger = promisify(new Loggerage("MY-APP"));
logger.debug("Hello world!") // is a promise now!
.then(() => {
return logger.getLog();
})
.then((log) => {
// handle log!
})
.catch(handleError);Or, if you want promisify only the actual async method, you can specify:
const { Loggerage } = require("loggerage");
const promisify = require('loggerage-promisify')
const logger = promisify(new Loggerage("MY-APP"), { onlyAsync: true });
logger.debug("Hello world!"); // is sync and NOT is a promise
logger.debugAsync("Hello again world!") // is async and promise!
.then(() => {
return logger.getLog();
})
.then((log) => {
// handle log!
})
.catch(handleError);Understanding
When you don't specify the onlyAsync property totrue, the methods with 'Async' suffix are promisificated as you expect, like debugAsync, infoAsync, and synchronous methods like info,debug, getLog, etc. are matched to the previous asynchronous methods. For this reason it will be the same to call debug as todebugAsync, etc.
When you (yes) specify the onlyAsync property totrue, only the methods with 'Async' suffix are promisificated, like debugAsync, infoAsync, etc.
Run test
$ npm install && npm testor
$ yarn install && yarn run testLicense
0.1.0
9 years ago