is-monitor/is-monitor-frontend/src/app/is-model/reference/properties/PropagationConstraint.ts

46 lines
795 B
TypeScript
Raw Normal View History

2019-10-16 11:48:47 +02:00
import { Property } from './Property';
export enum RemoveConstraint {
/*
* When the source Entity is removed also the target
* Entity is removed but if and only if the latter has no other
* incoming Relation.
*/
cascadeWhenOrphan,
/*
* When the source Entity is removed also the target
* Entity is removed.
*/
cascade,
/*
* When the source Entity is removed the target Entity
* is keep.
*/
keep
}
export enum AddConstraint {
propagate,
unpropagate
}
2019-10-16 14:41:51 +02:00
export class PropagationConstraint extends Property {
2019-10-16 11:48:47 +02:00
remove: RemoveConstraint;
add: AddConstraint;
2019-10-16 14:41:51 +02:00
constructor(remove: RemoveConstraint, add: AddConstraint){
super();
this.remove = remove;
this.add = add;
}
2019-10-16 11:48:47 +02:00
}