Last active
May 14, 2016 10:04
-
-
Save fend25/440a66f9189b1cc66a563ef5d480085f to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Show hidden characters
{ | |
"presets": ["es2015-node6"], | |
"plugins": [ | |
"transform-async-to-generator", | |
"syntax-async-functions" | |
], | |
"sourceMaps": "inline" | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
'use strict'; | |
const pgp = require('pg-promise')(); | |
const db = pgp({ | |
host: 'localhost', | |
port: 5432, | |
database: 'postgres', | |
user: 'user', | |
password: 'password', | |
ssl: false | |
}); | |
db.connect(); | |
const co = require('co'); | |
function* waitAndPrint(n) { | |
return new Promise(function (resolve) { | |
console.log(n); | |
setTimeout(resolve, n); | |
}); | |
} | |
function* handler() { | |
const one = yield db.task(function* (t) { | |
const result = yield t.oneOrNone('SELECT 1 as one'); | |
yield waitAndPrint(1000); | |
console.log(result.one); | |
return result.one; | |
}); | |
console.log(one); | |
} | |
co(handler); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
'use strict'; | |
const pgp = require('pg-promise')(); | |
const db = pgp({ | |
host: 'localhost', | |
port: 5432, | |
database: 'postgres', | |
user: 'user', | |
password: 'password', | |
ssl: false | |
}); | |
db.connect(); | |
async function waitAndPrint(n) { | |
console.log(Date.now(), n); | |
return new Promise(resolve => setTimeout(function() { | |
console.log(Date.now(), n); | |
resolve(); | |
}, n)); | |
} | |
async function handler() { | |
await db.task(async function(t) { | |
const result = await t.none('SELECT 1 as one'); | |
await waitAndPrint(1000); | |
console.log(Date.now(), result.one); | |
return result.one; | |
}); | |
process.exit(); | |
} | |
handler(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
'use strict'; | |
let waitAndPrint = (() => { | |
var ref = _asyncToGenerator(function* (n) { | |
console.log(Date.now(), n); | |
return new Promise(function (resolve) { | |
return setTimeout(function () { | |
console.log(Date.now(), n); | |
resolve(); | |
}, n); | |
}); | |
}); | |
return function waitAndPrint(_x) { | |
return ref.apply(this, arguments); | |
}; | |
})(); | |
let handler = (() => { | |
var ref = _asyncToGenerator(function* () { | |
yield db.task((() => { | |
var ref = _asyncToGenerator(function* (t) { | |
const result = yield t.oneOrNone('SELECT 1 as one'); | |
yield waitAndPrint(1000); | |
console.log(Date.now(), result.one); | |
return result.one; | |
}); | |
return function (_x2) { | |
return ref.apply(this, arguments); | |
}; | |
})()); | |
process.exit(); | |
}); | |
return function handler() { | |
return ref.apply(this, arguments); | |
}; | |
})(); | |
function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { return step("next", value); }, function (err) { return step("throw", err); }); } } return step("next"); }); }; } | |
const pgp = require('pg-promise')(); | |
const db = pgp({ | |
host: 'localhost', | |
port: 5432, | |
database: 'postgres', | |
user: 'user', | |
password: 'password', | |
ssl: false | |
}); | |
db.connect(); | |
handler(); | |
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBncF90ZXN0X2FzeW5jLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OEJBYUEsV0FBNEIsQ0FBNUIsRUFBK0I7QUFDN0IsWUFBUSxHQUFSLENBQVksS0FBSyxHQUFMLEVBQVosRUFBd0IsQ0FBeEIsRUFENkI7QUFFN0IsV0FBTyxJQUFJLE9BQUosQ0FBWTthQUFXLFdBQVcsWUFBVztBQUNsRCxnQkFBUSxHQUFSLENBQVksS0FBSyxHQUFMLEVBQVosRUFBd0IsQ0FBeEIsRUFEa0Q7QUFFbEQsa0JBRmtEO09BQVgsRUFHdEMsQ0FIMkI7S0FBWCxDQUFuQixDQUY2QjtHQUEvQjs7a0JBQWU7Ozs7Ozs4QkFPZixhQUF5QjtBQUN2QixVQUFNLEdBQUcsSUFBSDtrQ0FBUSxXQUFlLENBQWYsRUFBa0I7QUFDOUIsY0FBTSxTQUFTLE1BQU0sRUFBRSxTQUFGLENBQVksaUJBQVosQ0FBTixDQURlO0FBRTlCLGNBQU0sYUFBYSxJQUFiLENBQU4sQ0FGOEI7QUFHOUIsZ0JBQVEsR0FBUixDQUFZLEtBQUssR0FBTCxFQUFaLEVBQXdCLE9BQU8sR0FBUCxDQUF4QixDQUg4QjtBQUk5QixlQUFPLE9BQU8sR0FBUCxDQUp1QjtPQUFsQjs7Ozs7UUFBUixDQUFOLENBRHVCO0FBT3ZCLFlBQVEsSUFBUixHQVB1QjtHQUF6Qjs7a0JBQWU7Ozs7Ozs7QUFsQmYsTUFBTSxNQUFNLFFBQVEsWUFBUixHQUFOO0FBQ04sTUFBTSxLQUFLLElBQUk7QUFDYixRQUFNLFdBQU47QUFDQSxRQUFNLElBQU47QUFDQSxZQUFVLE9BQVY7QUFDQSxRQUFNLFlBQU47QUFDQSxZQUFVLFdBQVY7QUFDQSxPQUFLLEtBQUw7Q0FOUyxDQUFMO0FBUU4sR0FBRyxPQUFIOztBQW1CQSIsImZpbGUiOiJwZ3BfdGVzdF9hc3luYy5qcyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcclxuXHJcbmNvbnN0IHBncCA9IHJlcXVpcmUoJ3BnLXByb21pc2UnKSgpO1xyXG5jb25zdCBkYiA9IHBncCh7XHJcbiAgaG9zdDogJ2xvY2FsaG9zdCcsXHJcbiAgcG9ydDogNTQzMixcclxuICBkYXRhYmFzZTogJ2J1czJiJyxcclxuICB1c2VyOiAnYnVzMmJfdXNlcicsXHJcbiAgcGFzc3dvcmQ6ICdidXMyYnBhc3MnLFxyXG4gIHNzbDogZmFsc2VcclxufSk7XHJcbmRiLmNvbm5lY3QoKTtcclxuXHJcbmFzeW5jIGZ1bmN0aW9uIHdhaXRBbmRQcmludChuKSB7XHJcbiAgY29uc29sZS5sb2coRGF0ZS5ub3coKSwgbik7XHJcbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChmdW5jdGlvbigpIHtcclxuICAgIGNvbnNvbGUubG9nKERhdGUubm93KCksIG4pO1xyXG4gICAgcmVzb2x2ZSgpO1xyXG4gIH0sIG4pKTtcclxufVxyXG5hc3luYyBmdW5jdGlvbiBoYW5kbGVyKCkge1xyXG4gIGF3YWl0IGRiLnRhc2soYXN5bmMgZnVuY3Rpb24odCkge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdC5vbmVPck5vbmUoJ1NFTEVDVCAxIGFzIG9uZScpO1xyXG4gICAgYXdhaXQgd2FpdEFuZFByaW50KDEwMDApO1xyXG4gICAgY29uc29sZS5sb2coRGF0ZS5ub3coKSwgcmVzdWx0Lm9uZSk7XHJcbiAgICByZXR1cm4gcmVzdWx0Lm9uZTtcclxuICB9KTtcclxuICBwcm9jZXNzLmV4aXQoKTtcclxufVxyXG5cclxuaGFuZGxlcigpOyJdfQ== |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment