[api fix] Dont eagerly create config files in .load()
and .loadSync()
This commit is contained in:
parent
021850a14d
commit
bbcb2712f1
1 changed files with 22 additions and 33 deletions
|
@ -81,49 +81,38 @@ File.prototype.load = function (callback) {
|
|||
|
||||
path.exists(self.file, function (exists) {
|
||||
if (!exists) {
|
||||
//
|
||||
// If the path we are attempting to load doesn't exist, create it
|
||||
//
|
||||
self.save({}, function (err) {
|
||||
self.store = {};
|
||||
return callback(err, self.store);
|
||||
});
|
||||
}
|
||||
else {
|
||||
//
|
||||
// Else, the path exists, read it from disk
|
||||
//
|
||||
fs.readFile(self.file, function (err, data) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
try {
|
||||
self.store = self.format.parse(data.toString());
|
||||
}
|
||||
catch (ex) {
|
||||
return callback(new Error("Error parsing your JSON configuration file."));
|
||||
}
|
||||
|
||||
callback(null, self.store);
|
||||
});
|
||||
return callback(null, {});
|
||||
}
|
||||
|
||||
//
|
||||
// Else, the path exists, read it from disk
|
||||
//
|
||||
fs.readFile(self.file, function (err, data) {
|
||||
if (err) {
|
||||
return callback(err);
|
||||
}
|
||||
|
||||
try {
|
||||
self.store = self.format.parse(data.toString());
|
||||
}
|
||||
catch (ex) {
|
||||
return callback(new Error("Error parsing your JSON configuration file."));
|
||||
}
|
||||
|
||||
callback(null, self.store);
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
//
|
||||
// ### function load (callback)
|
||||
// #### @callback {function} **Optional** Continuation to respond to when complete.
|
||||
// Attempts to load the data stored in `this.file` synchronously and responds appropriately.
|
||||
// ### function loadSync (callback)
|
||||
// Attempts to load the data stored in `this.file` synchronously
|
||||
// and responds appropriately.
|
||||
//
|
||||
File.prototype.loadSync = function () {
|
||||
var data, self = this;
|
||||
|
||||
if (!path.existsSync(self.file)) {
|
||||
//
|
||||
// If the path we are attempting to load doesn't exist, create it
|
||||
//
|
||||
self.saveSync({});
|
||||
self.store = {};
|
||||
data = {};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue