all files / express-stormpath/lib/helpers/ create-stormpath-session.js

37.5% Statements 3/8
0% Branches 0/2
0% Functions 0/2
37.5% Lines 3/8
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                                           
'use strict';
 
var createSession = require('./create-session');
var exchangeStormpathToken = require('./exchange-stormpath-token');
 
/**
 * Creates a Stormpath JWT, exchanges it for an OAuth token, and stores it in a cookie.
 *
 * @param  {Object} account              Account to create a session for.
 * @param  {Object} req                  Express HTTP request.
 * @param  {Object} res                  Express HTTP response.
 * @param  {function} callback           Callback to call once the token cookie(s) has been set.
 */
module.exports = function createStormpathSession(account, req, res, callback) {
  exchangeStormpathToken(req, account, function (err, authenticationResult) {
    if (err) {
      return callback(err);
    }
 
    createSession(authenticationResult, account, req, res);
 
    callback();
  });
};