Skip to content

Commit

Permalink
Remove singleton patterns collection
Browse files Browse the repository at this point in the history
This should be up to the caller, who can decide if they might want to
reload the patterns list later, or have multiple collections with different
default patterns.
  • Loading branch information
Brian Crowell committed Apr 18, 2016
1 parent 06e467b commit 8918f38
Showing 1 changed file with 11 additions and 14 deletions.
25 changes: 11 additions & 14 deletions lib/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -189,29 +189,26 @@ function GrokCollection() {
};
}

var defaultPatterns;
var patternsDir = __dirname + '/patterns/';

function doLoadDefault(loadModules) {
if (!defaultPatterns) {
defaultPatterns = new GrokCollection();
var files = fs.readdirSync(patternsDir);
if (files && files.length) {
files.filter(function(file) {
return !loadModules || !loadModules.length || loadModules.indexOf(file) !== -1;
}).forEach(function (file) {
defaultPatterns.loadSync(patternsDir + file);
})
}
var result = new GrokCollection();

var files = fs.readdirSync(patternsDir);
if (files && files.length) {
files.filter(function(file) {
return !loadModules || !loadModules.length || loadModules.indexOf(file) !== -1;
}).forEach(function (file) {
result.loadSync(patternsDir + file);
})
}

return defaultPatterns;
return result;
}

module.exports = {
loadDefault: function (callback, loadModules) {
doLoadDefault(loadModules);
callback(defaultPatterns);
callback(doLoadDefault(loadModules));
},

loadDefaultSync: doLoadDefault,
Expand Down

0 comments on commit 8918f38

Please sign in to comment.