cqrs-eventdenormalizer
Advanced tools
Comparing version 1.1.11 to 1.2.0
@@ -344,2 +344,16 @@ 'use strict'; | ||
/** | ||
* Returns the denormalizer information. | ||
* @returns {Object} | ||
*/ | ||
getInfo: function () { | ||
if (!this.tree) { | ||
var err = new Error('Not initialized!'); | ||
debug(err); | ||
throw err; | ||
} | ||
return this.tree.getInfo(); | ||
}, | ||
/** | ||
* Call this function to extend the passed event. | ||
@@ -346,0 +360,0 @@ * @param {Object} evt The event object |
@@ -14,2 +14,49 @@ 'use strict'; | ||
getInfo: function () { | ||
if (!tree || _.isEmpty(tree)) { | ||
debug('no tree injected'); | ||
return null; | ||
} | ||
var info = { | ||
collections: [], | ||
generalEventExtenders: [] | ||
}; | ||
tree.collections.forEach(function (col) { | ||
var c = { name: col.name, viewBuilders: [], eventExtenders: [] }; | ||
col.viewBuilders.forEach(function (vB) { | ||
c.viewBuilders.push({ | ||
name: vB.name, | ||
aggregate: vB.aggregate, | ||
context: vB.context, | ||
version: vB.version | ||
}); | ||
}); | ||
col.eventExtenders.forEach(function (evtExt) { | ||
c.eventExtenders.push({ | ||
name: evtExt.name, | ||
aggregate: evtExt.aggregate, | ||
context: evtExt.context, | ||
version: evtExt.version | ||
}); | ||
}); | ||
info.collections.push(c); | ||
}); | ||
tree.generalEventExtenders.forEach(function (evtExt) { | ||
info.generalEventExtenders.push({ | ||
name: evtExt.name, | ||
aggregate: evtExt.aggregate, | ||
context: evtExt.context, | ||
version: evtExt.version | ||
}); | ||
}); | ||
return info; | ||
}, | ||
getViewBuilders: function (query) { | ||
@@ -16,0 +63,0 @@ if (!tree || _.isEmpty(tree)) { |
{ | ||
"author": "adrai", | ||
"name": "cqrs-eventdenormalizer", | ||
"version": "1.1.11", | ||
"version": "1.2.0", | ||
"private": false, | ||
@@ -6,0 +6,0 @@ "main": "index.js", |
@@ -325,2 +325,67 @@ # Introduction | ||
## Request denormalizer information | ||
After the initialization you can request the denormalizer information: | ||
denorm.init(function (err) { | ||
denorm.getInfo(); | ||
// ==> | ||
// { | ||
// "collections": [ | ||
// { | ||
// "name": "person", | ||
// "viewBuilders": [ | ||
// { | ||
// "name": "enteredNewPerson", | ||
// "aggregate": "person", | ||
// "context": "hr", | ||
// "version": 2 | ||
// }, | ||
// { | ||
// "name": "registeredEMailAddress", | ||
// "aggregate": "person", | ||
// "context": "hr", | ||
// "version": 2 | ||
// } | ||
// ], | ||
// "eventExtenders": [ | ||
// { | ||
// "name": "enteredNewPerson", | ||
// "aggregate": "person", | ||
// "context": "hr", | ||
// "version": 2 | ||
// } | ||
// ] | ||
// }, | ||
// { | ||
// "name": "personDetail", | ||
// "viewBuilders": [ | ||
// { | ||
// "name": "enteredNewPerson", | ||
// "aggregate": "person", | ||
// "context": "hr", | ||
// "version": 2 | ||
// }, | ||
// { | ||
// "name": "registeredEMailAddress", | ||
// "aggregate": "person", | ||
// "context": "hr", | ||
// "version": 2 | ||
// } | ||
// ], | ||
// "eventExtenders": [] | ||
// } | ||
// ], | ||
// "generalEventExtenders": [ | ||
// { | ||
// "name": "", | ||
// "aggregate": null, | ||
// "context": null, | ||
// "version": -1 | ||
// } | ||
// ] | ||
// } | ||
}); | ||
# Components definition | ||
@@ -558,3 +623,8 @@ | ||
### if you want to clear the readModel before replaying... | ||
denormalizer.clear(function (err) { | ||
}); | ||
[Release notes](https://github.com/adrai/node-cqrs-eventdenormalizer/blob/master/releasenotes.md) | ||
@@ -565,3 +635,3 @@ | ||
Copyright (c) 2014 Adriano Raiano | ||
Copyright (c) 2015 Adriano Raiano | ||
@@ -568,0 +638,0 @@ Permission is hereby granted, free of charge, to any person obtaining a copy |
@@ -0,1 +1,4 @@ | ||
## [v1.2.0](https://github.com/adrai/node-cqrs-eventdenormalizer/compare/v1.1.11...v1.2.0) | ||
- added getInfo function | ||
## [v1.1.11](https://github.com/adrai/node-cqrs-eventdenormalizer/compare/v1.1.10...v1.1.11) | ||
@@ -2,0 +5,0 @@ - fix deepClone issue in collection |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3180
652
185522