diff options
Diffstat (limited to 'node_modules/read-cache/index.js')
| -rw-r--r-- | node_modules/read-cache/index.js | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/node_modules/read-cache/index.js b/node_modules/read-cache/index.js deleted file mode 100644 index b5263e68..00000000 --- a/node_modules/read-cache/index.js +++ /dev/null @@ -1,78 +0,0 @@ -var fs = require('fs');
-var path = require('path');
-var pify = require('pify');
-
-var stat = pify(fs.stat);
-var readFile = pify(fs.readFile);
-var resolve = path.resolve;
-
-var cache = Object.create(null);
-
-function convert(content, encoding) {
- if (Buffer.isEncoding(encoding)) {
- return content.toString(encoding);
- }
- return content;
-}
-
-module.exports = function (path, encoding) {
- path = resolve(path);
-
- return stat(path).then(function (stats) {
- var item = cache[path];
-
- if (item && item.mtime.getTime() === stats.mtime.getTime()) {
- return convert(item.content, encoding);
- }
-
- return readFile(path).then(function (data) {
- cache[path] = {
- mtime: stats.mtime,
- content: data
- };
-
- return convert(data, encoding);
- });
- }).catch(function (err) {
- cache[path] = null;
- return Promise.reject(err);
- });
-};
-
-module.exports.sync = function (path, encoding) {
- path = resolve(path);
-
- try {
- var stats = fs.statSync(path);
- var item = cache[path];
-
- if (item && item.mtime.getTime() === stats.mtime.getTime()) {
- return convert(item.content, encoding);
- }
-
- var data = fs.readFileSync(path);
-
- cache[path] = {
- mtime: stats.mtime,
- content: data
- };
-
- return convert(data, encoding);
- } catch (err) {
- cache[path] = null;
- throw err;
- }
-
-};
-
-module.exports.get = function (path, encoding) {
- path = resolve(path);
- if (cache[path]) {
- return convert(cache[path].content, encoding);
- }
- return null;
-};
-
-module.exports.clear = function () {
- cache = Object.create(null);
-};
|
