From ec31bce20c85d627dde0168161b804f7984b9fdc Mon Sep 17 00:00:00 2001 From: Barret Schloerke Date: Thu, 29 Mar 2012 14:42:35 -0700 Subject: [PATCH 1/4] white space --- lib/filechangeemitter.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/filechangeemitter.js b/lib/filechangeemitter.js index cf113f2..7c69eaf 100644 --- a/lib/filechangeemitter.js +++ b/lib/filechangeemitter.js @@ -10,7 +10,7 @@ * Module dependencies. */ -var fs = require('fs'), +var fs = require('fs'), EventEmitter = require('events').EventEmitter, basename = require('path').basename, extname = require('path').extname; @@ -29,22 +29,22 @@ var fs = require('fs'), */ var FileChangeEmitter = exports.FileChangeEmitter = function(files, options){ - + var self = this; EventEmitter.call(this); - + options = options || {}; var interval = options.interval || 100, extensions = options.extensions || ['.js'], openStat = 0; - + self.files = 0; - + if (!files) files = process.execPath; if (!Array.isArray(files)) files = [files]; //files.forEach(traverse); traverse( files, watch ); - + // traverse file if it is a directory // otherwise setup the watcher function traverse( files, fileCallback, level ) { @@ -78,13 +78,13 @@ var FileChangeEmitter = exports.FileChangeEmitter = function(files, options){ } }); } - + // remove listeners function unwatch(file) { self.files--; fs.unwatchFile( file ); } - + self.close = function(){ traverse( files, unwatch ); }; From b070f3550756d4972fa329d626c3bfc4f2c2a94b Mon Sep 17 00:00:00 2001 From: Barret Schloerke Date: Thu, 29 Mar 2012 14:42:52 -0700 Subject: [PATCH 2/4] added a .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..40b878d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +node_modules/ \ No newline at end of file From 73a718575756124de10677bf5ee4861a846c3e69 Mon Sep 17 00:00:00 2001 From: Barret Schloerke Date: Thu, 29 Mar 2012 14:43:15 -0700 Subject: [PATCH 3/4] removed console.log statement --- lib/filechangeemitter.js | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/filechangeemitter.js b/lib/filechangeemitter.js index 7c69eaf..1d402fa 100644 --- a/lib/filechangeemitter.js +++ b/lib/filechangeemitter.js @@ -73,7 +73,6 @@ var FileChangeEmitter = exports.FileChangeEmitter = function(files, options){ self.files++; fs.watchFile( file, { interval:interval }, function( curr, prev ){ if (curr.mtime > prev.mtime) { - console.log(' \033[36mchanged\033[0m \033[90m- %s\033[0m', file); self.emit('change',file); } }); From b60a2a8a9a8984b1a4726ff711ec633aeea587eb Mon Sep 17 00:00:00 2001 From: Barret Schloerke Date: Thu, 29 Mar 2012 15:21:26 -0700 Subject: [PATCH 4/4] added test example --- examples/log-test-file.txt | 1 + examples/log.js | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 examples/log-test-file.txt create mode 100644 examples/log.js diff --git a/examples/log-test-file.txt b/examples/log-test-file.txt new file mode 100644 index 0000000..0aa6fb5 --- /dev/null +++ b/examples/log-test-file.txt @@ -0,0 +1 @@ +test data \ No newline at end of file diff --git a/examples/log.js b/examples/log.js new file mode 100644 index 0000000..6153c36 --- /dev/null +++ b/examples/log.js @@ -0,0 +1,15 @@ + +var FileChangeEmitter = require('../index').FileChangeEmitter, + fs = require('fs'); + +// This is run by nodeunit +var fw = new FileChangeEmitter(['./log-test-file.txt']); + +fw.on('change',function(file){ + console.log(' \033[36mchanged\033[0m \033[90m- %s\033[0m', file); + fw.close(); +}); + +setTimeout(function(){ + fs.writeFile('./log-test-file.txt', "test data"); +},500);