[Composition] Disallow composition for leaf types

Disallow composition for domain object types which will
not have a composition property; WTD-1221.
This commit is contained in:
Victor Woeltjen
2015-06-03 13:46:25 -07:00
parent e452921729
commit 2648f01966
6 changed files with 64 additions and 3 deletions

View File

@ -0,0 +1,28 @@
/*global define*/
define(
[],
function () {
"use strict";
/**
* Policy allowing composition only for domain object types which
* have a composition property.
*/
function CompositionModelPolicy() {
return {
/**
* Is the type identified by the candidate allowed to
* contain the type described by the context?
*/
allow: function (candidate, context) {
return Array.isArray(
(candidate.getInitialModel() || {}).composition
);
}
};
}
return CompositionModelPolicy;
}
);