function scheduleJob() {
  if (arguments.length < 2) {
    return null;
  }

  var name = (arguments.length >= 3 && typeof arguments[0] === 'string') ? arguments[0] : null;
  var spec = name ? arguments[1] : arguments[0];
  var method = name ? arguments[2] : arguments[1];
  var callback = name ? arguments[3] : arguments[2];

  var job = new Job(name, method, callback);

  if (job.schedule(spec)) {
    return job;
  }

  return null;
}
function scheduleJob() {
  if (arguments.length < 2) {
    return null;
  }

  var name = (arguments.length >= 3 && typeof arguments[0] === 'string') ? arguments[0] : null;
  var spec = name ? arguments[1] : arguments[0];
  var method = name ? arguments[2] : arguments[1];
  var callback = name ? arguments[3] : arguments[2];

  var job = new Job(name, method, callback);

  if (job.schedule(spec)) {
    return job;
  }

  return null;
}
function scheduleJob ( ) { if ( arguments . length < 2 ) { return null ; } var name = ( arguments . length >= 3 && typeof arguments [ 0 ] === 'string' ) ? arguments [ 0 ] : null ; var spec = name ? arguments [ 1 ] : arguments [ 0 ] ; var method = name ? arguments [ 2 ] : arguments [ 1 ] ; var callback = name ? arguments [ 3 ] : arguments [ 2 ] ; var job = new Job ( name , method , callback ) ; if ( job . schedule ( spec ) ) { return job ; } return null ; }
/* Convenience methods
/ * Convenience methods