[Actions] Restrict mutating actions

Restrict actions which cause mutation of domain objects to
types of domain objects which can be created. (This does not
include Packet or Telemetry Point, WTD-723.)
This commit is contained in:
Victor Woeltjen
2015-01-27 13:00:40 -08:00
parent 5c34382933
commit 4c42d4de28
3 changed files with 20 additions and 6 deletions

View File

@@ -80,9 +80,14 @@ define(
RemoveAction.appliesTo = function (context) {
var object = (context || {}).domainObject,
contextCapability = object && object.getCapability("context"),
parent = contextCapability && contextCapability.getParent();
parent = contextCapability && contextCapability.getParent(),
parentType = parent.getCapability('type'),
parentCreatable = parentType && parentType.hasFeature('creation');
// Only creatable types should be modifiable
return parent !== undefined &&
Array.isArray(parent.getModel().composition);
Array.isArray(parent.getModel().composition) &&
parentCreatable;
};
return RemoveAction;