lib/delta/delta.js
function(dirPath, lastCursor, callback) {
    async.parallel([
      (cb) => {
        localDelta.getDelta(dirPath, cb);
      },
      (cb) => {
        remoteDelta.getDelta(lastCursor, cb);
      }
    ], (err, results) => {
      logger.info('getDelta ended', {category: 'sync-delta'});

      if(err) return callback(err);

      var currentRemoteCursor = results[1];

      applyGroupedDelta(remoteDelta.getGroupedDelta(), (err) => {
        if(err) return callback(err);

        callback(null, currentRemoteCursor);
      });
    });
  }
function(dirPath, lastCursor, callback) {
    async.parallel([
      (cb) => {
        localDelta.getDelta(dirPath, cb);
      },
      (cb) => {
        remoteDelta.getDelta(lastCursor, cb);
      }
    ], (err, results) => {
      logger.info('getDelta ended', {category: 'sync-delta'});

      if(err) return callback(err);

      var currentRemoteCursor = results[1];

      applyGroupedDelta(remoteDelta.getGroupedDelta(), (err) => {
        if(err) return callback(err);

        callback(null, currentRemoteCursor);
      });
    });
  }
function ( dirPath , lastCursor , callback ) { async . parallel ( [ ( cb ) => { localDelta . getDelta ( dirPath , cb ) ; } , ( cb ) => { remoteDelta . getDelta ( lastCursor , cb ) ; } ] , ( err , results ) => { logger . info ( 'getDelta ended' , { category : 'sync-delta' } ) ; if ( err ) return callback ( err ) ; var currentRemoteCursor = results [ 1 ] ; applyGroupedDelta ( remoteDelta . getGroupedDelta ( ) , ( err ) => { if ( err ) return callback ( err ) ; callback ( null , currentRemoteCursor ) ; } ) ; } ) ; }
gets the remote and local delta and merges it

@param {string} dirPath - path to the root directory
@param {string} lastCursor - last cursor or undefined if cursor has been reset
@param {Function} callback - callback function
@returns {void} - no return value
gets the remote and local delta and merges it