ezpg-promise-method

0.0.2 • Public • Published

ezpg-promise-method Build Status

Ensure that the first parameter is always the pgClient.

The method should return a promise.

If the pgClient is not explicitly passed, then obtaining(and releasing) a new client is handled automatically. If the pgClient is explicitly passed in, then the caller is responsible for everything related to that connection.

var Method = require('ezpg-promise-method'),
    ezpg = require('ezpg'),
    q = require('q');
 
var obj = {},
    method = Method(obj);
 
method('add', function(client, a, b){
    var d = q.defer();
 
    client.query('select $1 + $2', [a, b], function(err, result){
        d.resolve(result);
    });
 
    return d.promise;
});
 
// call it without a client
obj.add(1, 2)
    .then(function(result){
        console.dir(result);
    });
 
// or call it with a client
ezpg.transaction(function(err, client, commit, rollback){
    obj.add(client, 3, 4)
        .then(function(result){
            rollback();
        });
});

/ezpg-promise-method/

    Package Sidebar

    Install

    npm i ezpg-promise-method

    Weekly Downloads

    1

    Version

    0.0.2

    License

    mit

    Last publish

    Collaborators

    • chevett