function(cb) {
      var t = this;
      async.waterfall(
          [
            /**
             * Reads the db.json, if it exists
             *
             * @param cb
             */
            function readDb(cb) {
              fs.exists(t.getDbFilename(), function(exists) {
                if (exists) {
                  fs.readFile(t.getDbFilename(), {encoding: "utf-8"}, cb); 
                } else {
                  cb(null, null); 
                }
              });
            },

            /**
             * Parses the db.json into db
             *
             * @param data
             * @param cb
             */
            function parseDb(data, cb) {
              if (data && data.trim().length) {
                log.debug("Parsing database");
                t.__db = jsonlint.parse(data);
              } else {
                log.debug("No database to parse");
                t.__db = {};
              }
              cb(null, t.__db);
            }
          ],

          /**
           * Done
           * @param err
           * @param result
           */
          function(err, result) {
            log.debug("loaded database: err=" + err);
            cb();
          });
    }
function(cb) {
      var t = this;
      async.waterfall(
          [
            
            function readDb(cb) {
              fs.exists(t.getDbFilename(), function(exists) {
                if (exists) {
                  fs.readFile(t.getDbFilename(), {encoding: "utf-8"}, cb); 
                } else {
                  cb(null, null); 
                }
              });
            },

            
            function parseDb(data, cb) {
              if (data && data.trim().length) {
                log.debug("Parsing database");
                t.__db = jsonlint.parse(data);
              } else {
                log.debug("No database to parse");
                t.__db = {};
              }
              cb(null, t.__db);
            }
          ],

          
          function(err, result) {
            log.debug("loaded database: err=" + err);
            cb();
          });
    }
function ( cb ) { var t = this ; async . waterfall ( [ /**
             * Reads the db.json, if it exists
             *
             * @param cb
             */ function readDb ( cb ) { fs . exists ( t . getDbFilename ( ) , function ( exists ) { if ( exists ) { fs . readFile ( t . getDbFilename ( ) , { encoding : "utf-8" } , cb ) ; } else { cb ( null , null ) ; } } ) ; } , /**
             * Parses the db.json into db
             *
             * @param data
             * @param cb
             */ function parseDb ( data , cb ) { if ( data && data . trim ( ) . length ) { log . debug ( "Parsing database" ) ; t . __db = jsonlint . parse ( data ) ; } else { log . debug ( "No database to parse" ) ; t . __db = { } ; } cb ( null , t . __db ) ; } ] , /**
           * Done
           * @param err
           * @param result
           */ function ( err , result ) { log . debug ( "loaded database: err=" + err ) ; cb ( ) ; } ) ; }
Loads the database if available

@param cb
Loads the database if available