You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
194 lines
3.6 KiB
194 lines
3.6 KiB
/**
|
|
*
|
|
* @author Tom Baeyens
|
|
* @author (Javascript) Dmitry Farafonov
|
|
*/
|
|
|
|
var ActivityImpl = function(activityJson){
|
|
this.outgoingTransitions = [];
|
|
this.outgoingTransitions = [];
|
|
this.incomingTransitions = [];
|
|
this.activityBehavior = null;
|
|
this.parent = null;
|
|
this.isScope = false;
|
|
this.isAsync = false;
|
|
this.isExclusive = false;
|
|
this.x = -1;
|
|
this.y = -1;
|
|
this.width = -1;
|
|
this.height = -1;
|
|
this.properties = {};
|
|
|
|
//console.log("activityJson: ", activityJson);
|
|
|
|
if (activityJson != undefined) {
|
|
this.setId(activityJson.activityId);
|
|
|
|
for (var propertyName in activityJson.properties) {
|
|
this.setProperty(propertyName, activityJson.properties[propertyName]);
|
|
}
|
|
//this.setProperty("name", activityJson.activityName);
|
|
//this.setProperty("type", activityJson.activityType);
|
|
this.setX(activityJson.x);
|
|
this.setY(activityJson.y);
|
|
this.setWidth(activityJson.width);
|
|
this.setHeight(activityJson.height);
|
|
|
|
if (activityJson.multiInstance)
|
|
this.setProperty("multiInstance", activityJson.multiInstance);
|
|
if (activityJson.collapsed) {
|
|
this.setProperty("collapsed", activityJson.collapsed);
|
|
}
|
|
if (activityJson.isInterrupting != undefined)
|
|
this.setProperty("isInterrupting", activityJson.isInterrupting);
|
|
}
|
|
};
|
|
|
|
ActivityImpl.prototype = {
|
|
outgoingTransitions: [],
|
|
outgoingTransitions: [],
|
|
incomingTransitions: [],
|
|
activityBehavior: null,
|
|
parent: null,
|
|
isScope: false,
|
|
isAsync: false,
|
|
isExclusive: false,
|
|
|
|
id: null,
|
|
|
|
properties: {},
|
|
|
|
// Graphical information
|
|
x: -1,
|
|
y: -1,
|
|
width: -1,
|
|
height: -1,
|
|
|
|
setId: function(id){
|
|
this.id = id;
|
|
},
|
|
|
|
getId: function(){
|
|
return this.id;
|
|
},
|
|
|
|
|
|
setProperty: function(name, value){
|
|
this.properties[name] = value;
|
|
},
|
|
getProperty: function(name){
|
|
return this.properties[name];
|
|
},
|
|
|
|
createOutgoingTransition: function(transitionId){
|
|
|
|
},
|
|
|
|
toString: function(id) {
|
|
return "Activity("+id+")";
|
|
},
|
|
|
|
getParentActivity: function(){
|
|
/*
|
|
if (parent instanceof ActivityImpl) {
|
|
79 return (ActivityImpl) parent;
|
|
80 }
|
|
81 return null;
|
|
*/
|
|
return this.parent;
|
|
},
|
|
|
|
// restricted setters ///////////////////////////////////////////////////////
|
|
|
|
setOutgoingTransitions: function(outgoingTransitions){
|
|
this.outgoingTransitions = outgoingTransitions;
|
|
},
|
|
|
|
setParent: function(parent){
|
|
this.parent = parent;
|
|
},
|
|
|
|
setIncomingTransitions: function(incomingTransitions){
|
|
this.incomingTransitions = incomingTransitions;
|
|
},
|
|
|
|
// getters and setters //////////////////////////////////////////////////////
|
|
|
|
getOutgoingTransitions: function(){
|
|
return this.outgoingTransitions;
|
|
},
|
|
|
|
getActivityBehavior: function(){
|
|
return this.activityBehavior;
|
|
},
|
|
|
|
setActivityBehavior: function(activityBehavior){
|
|
this.activityBehavior = activityBehavior;
|
|
},
|
|
|
|
getParent: function(){
|
|
return this.parent;
|
|
},
|
|
|
|
getIncomingTransitions: function(){
|
|
return this.incomingTransitions;
|
|
},
|
|
|
|
isScope: function(){
|
|
return this.isScope;
|
|
},
|
|
|
|
setScope: function(isScope){
|
|
this.isScope = isScope;
|
|
},
|
|
|
|
getX: function(){
|
|
return this.x;
|
|
},
|
|
|
|
setX: function(x){
|
|
this.x = x;
|
|
},
|
|
|
|
getY: function(){
|
|
return this.y;
|
|
},
|
|
|
|
setY: function(y){
|
|
this.y = y;
|
|
},
|
|
|
|
getWidth: function(){
|
|
return this.width;
|
|
},
|
|
|
|
setWidth: function(width){
|
|
this.width = width;
|
|
},
|
|
|
|
getHeight: function(){
|
|
return this.height;
|
|
},
|
|
|
|
setHeight: function(height){
|
|
this.height = height;
|
|
},
|
|
|
|
isAsync: function() {
|
|
return this.isAsync;
|
|
},
|
|
|
|
setAsync: function(isAsync) {
|
|
this.isAsync = isAsync;
|
|
},
|
|
|
|
isExclusive: function() {
|
|
return this.isExclusive;
|
|
},
|
|
|
|
setExclusive: function(isExclusive) {
|
|
this.isExclusive = isExclusive;
|
|
},
|
|
|
|
vvoid: function(){}
|
|
};
|
|
|