|
@@ -5,9 +5,11 @@ const program = require('commander');
|
|
|
const inquirer = require('inquirer');
|
|
|
const file = require('./src/file');
|
|
|
const cst = require('./src/constant');
|
|
|
+const timer = require('./src/timer');
|
|
|
|
|
|
// Variables configs et globales
|
|
|
let preprocessFile = './data/data.ppf';
|
|
|
+let verbose = false;
|
|
|
|
|
|
// Parametrage CLI
|
|
|
program.version('1.0.0');
|
|
@@ -15,12 +17,14 @@ program.version('1.0.0');
|
|
|
program
|
|
|
.option('-n, --name <string>', 'Nom de l\'auteur dont il faut chercher les co-auteurs')
|
|
|
.option('-f, --file <source>', 'Chemin vers le fichier à utiliser pour la recherche des co-auteurs', preprocessFile)
|
|
|
- .option('-p, --process <source>', 'Prepare le fichier source et effectue la recherche des co-auteurs');
|
|
|
+ .option('-p, --process <source>', 'Prepare le fichier source et effectue la recherche des co-auteurs')
|
|
|
+ .option('-v, --verbose', 'Affiche plus d\'informations', verbose);
|
|
|
program
|
|
|
.command('prepare <source> [destination]')
|
|
|
.description(`Prepare un fichier XML (source) pour la recherche des co-auteurs, le resultat est mis dans le fichier destination (default ${preprocessFile})`)
|
|
|
.action((source, destination = preprocessFile) => {
|
|
|
if (file.exist(source)) {
|
|
|
+ verbose = true;
|
|
|
parse(source, destination);
|
|
|
} else {
|
|
|
console.error(cst.toString(cst.FILE_NOT_FOUND) + ': ' + source);
|
|
@@ -32,6 +36,7 @@ program
|
|
|
program.parse(process.argv);
|
|
|
const name = (program.name && typeof program.name === 'string') ? program.name : null;
|
|
|
let source = (program.process) ? program.process : program.file;
|
|
|
+verbose = program.verbose;
|
|
|
|
|
|
// Si on est pas en train de preparer le fichier de pre traitement
|
|
|
if (process.argv[2] !== 'prepare') {
|
|
@@ -80,10 +85,16 @@ if (process.argv[2] !== 'prepare') {
|
|
|
* @param dest Chemin pour créer le fichier avec les données traitées
|
|
|
*/
|
|
|
function parse(source, dest) {
|
|
|
- console.info('Beginning of pre-processing...');
|
|
|
+ if (verbose) {
|
|
|
+ console.info('Beginning of pre-processing...');
|
|
|
+ timer.start();
|
|
|
+ }
|
|
|
const parser = require('./src/parser').from(source).to(dest);
|
|
|
parser.parse(dest => {
|
|
|
- console.info(`Pre-processing file created at ${dest}`);
|
|
|
+ if (verbose) {
|
|
|
+ timer.stop();
|
|
|
+ console.info(`Pre-processing file created at ${dest} in ${timer.time()}`);
|
|
|
+ }
|
|
|
});
|
|
|
}
|
|
|
|
|
@@ -94,7 +105,9 @@ function parse(source, dest) {
|
|
|
*/
|
|
|
function find(source, name) {
|
|
|
console.info(`Search for ${name}'s co-authors...`);
|
|
|
+ timer.start();
|
|
|
require('./src/finder').in(source).find(name, (result) => {
|
|
|
- console.log('res', result);
|
|
|
+ timer.stop();
|
|
|
+ console.log('res', result, timer.time(), timer.second());
|
|
|
});
|
|
|
}
|