mirror of
https://github.com/marko-js/marko.git
synced 2025-12-08 19:26:05 +00:00
Provide hooks to clear caches
This commit is contained in:
parent
26024ed8fa
commit
009e99bfe9
@ -102,7 +102,10 @@ extend(exports, {
|
||||
Expression: require('./Expression'),
|
||||
TypeConverter: require('./TypeConverter'),
|
||||
EscapeXmlContext: require('./EscapeXmlContext'),
|
||||
defaultOptions: defaultOptions
|
||||
defaultOptions: defaultOptions,
|
||||
clearCaches: function() {
|
||||
exports.taglibs.clearCaches();
|
||||
}
|
||||
});
|
||||
|
||||
exports.TemplateCompiler = require('./TemplateCompiler');
|
||||
|
||||
@ -4,3 +4,7 @@ exports.lookup = require('./taglib-lookup');
|
||||
exports.buildLookup = exports.lookup.buildLookup;
|
||||
exports.registerTaglib = exports.lookup.registerTaglib;
|
||||
exports.excludeDir = exports.lookup.excludeDir;
|
||||
exports.clearCaches = function() {
|
||||
exports.lookup.clearCaches();
|
||||
require('./taglib-finder').clearCaches();
|
||||
};
|
||||
@ -100,4 +100,10 @@ function excludeDir(dirname) {
|
||||
}
|
||||
|
||||
exports.find = find;
|
||||
exports.excludeDir = excludeDir;
|
||||
exports.excludeDir = excludeDir;
|
||||
|
||||
exports.clearCaches = function() {
|
||||
existsCache = {};
|
||||
findCache = {};
|
||||
taglibsByPath = {};
|
||||
};
|
||||
@ -41,4 +41,7 @@ function registerTaglib(taglib) {
|
||||
|
||||
exports.excludeDir = taglibFinder.excludeDir;
|
||||
exports.registerTaglib = registerTaglib;
|
||||
exports.buildLookup = buildLookup;
|
||||
exports.buildLookup = buildLookup;
|
||||
exports.clearCaches = function() {
|
||||
lookupCache = {};
|
||||
};
|
||||
@ -23,7 +23,6 @@
|
||||
var asyncWriter = require('async-writer');
|
||||
var helpers = require('./helpers');
|
||||
var loader = require('./loader');
|
||||
var cache = {};
|
||||
var Readable;
|
||||
var AsyncWriter = asyncWriter.AsyncWriter;
|
||||
var extend = require('raptor-util/extend');
|
||||
@ -162,6 +161,8 @@ if (stream) {
|
||||
}
|
||||
|
||||
function load(templatePath, options) {
|
||||
var cache = exports.cache;
|
||||
|
||||
if (!templatePath) {
|
||||
throw new Error('"templatePath" is required');
|
||||
}
|
||||
@ -191,12 +192,12 @@ exports.stream = function(templatePath, data) {
|
||||
return load(templatePath).stream(data);
|
||||
};
|
||||
|
||||
exports.unload = function(templatePath) {
|
||||
delete cache[templatePath];
|
||||
};
|
||||
exports.cache = {};
|
||||
|
||||
exports.createWriter = function(writer) {
|
||||
return new AsyncWriter(writer);
|
||||
};
|
||||
|
||||
exports.helpers = helpers;
|
||||
|
||||
exports.Template = Template;
|
||||
Loading…
x
Reference in New Issue
Block a user