aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/config/index.js3
-rw-r--r--docs/config/processors/debug-dump.js26
2 files changed, 28 insertions, 1 deletions
diff --git a/docs/config/index.js b/docs/config/index.js
index 30ab22ee..9dfa4abf 100644
--- a/docs/config/index.js
+++ b/docs/config/index.js
@@ -17,7 +17,8 @@ module.exports = function(config) {
require('./processors/versions-data'),
require('./processors/pages-data'),
require('./processors/protractor-generate'),
- require('./processors/index-page')
+ require('./processors/index-page'),
+ require('./processors/debug-dump')
]);
config.append('processing.tagDefinitions', [
diff --git a/docs/config/processors/debug-dump.js b/docs/config/processors/debug-dump.js
new file mode 100644
index 00000000..644091a3
--- /dev/null
+++ b/docs/config/processors/debug-dump.js
@@ -0,0 +1,26 @@
+var writer = require('dgeni/lib/utils/doc-writer');
+var log = require('winston');
+var util = require("util");
+
+var filter, outputPath, depth;
+
+module.exports = {
+ name: 'debug-dump',
+ runBefore: ['write-files'],
+ description: 'This processor dumps docs that match a filter to a file',
+ init: function(config, injectables) {
+ filter = config.get('processing.debug-dump.filter');
+ outputPath = config.get('processing.debug-dump.outputPath');
+ depth = config.get('processing.debug-dump.depth', 2);
+ },
+ process: function(docs) {
+ if ( filter && outputPath ) {
+ log.info('Dumping docs:', filter, outputPath);
+ var filteredDocs = filter(docs);
+ var dumpedDocs = util.inspect(filteredDocs, depth);
+ return writer.writeFile(outputPath, dumpedDocs).then(function() {
+ return docs;
+ });
+ }
+ }
+}; \ No newline at end of file