/**
* Copyright 2004-2016 Riccardo Solmi. All rights reserved.
* This file is part of the Whole Platform.
*
* The Whole Platform is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Whole Platform is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with the Whole Platform. If not, see <http://www.gnu.org/licenses/>.
*/
package org.whole.lang.models.codebase;
import org.whole.lang.builders.IBuilderOperation;
import org.whole.lang.templates.AbstractTemplateFactory;
public class WorkflowModel extends AbstractTemplateFactory<org.whole.lang.models.model.Model> {
public void apply(IBuilderOperation op) {
org.whole.lang.models.builders.IModelsBuilder b0 = (org.whole.lang.models.builders.IModelsBuilder) op.wGetBuilder(org.whole.lang.models.reflect.ModelsLanguageKit.URI);
b0.Model_();
b0.SimpleName("Workflow");
b0.TypeRelations();
b0.ModelDeclarations_(37);
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Workflow");
b0.Types();
b0.Features_(6);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Description");
b0.SimpleName("description");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Declarations");
b0.SimpleName("declarations");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("StartEvent");
b0.SimpleName("startEvent");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowEvent");
b0.SimpleName("endEvent");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("FlowObject");
b0.Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Label");
b0.SimpleName("label");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Scope");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(5);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Declarations");
b0.SimpleName("declarations");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("compensationHandler");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("EventHandlers");
b0.SimpleName("eventHandlers");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("FaultHandlers");
b0.SimpleName("faultHandlers");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("FaultHandlers");
b0.Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("unique");
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("FaultHandler");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("FaultHandler");
b0.Types();
b0.Features_(5);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Label");
b0.SimpleName("label");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Fault");
b0.SimpleName("faultName");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Variable");
b0.SimpleName("faultVariable");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("EventHandlers");
b0.Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("EventHandler");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("EventHandler");
b0.Types();
b0.Features_(4);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Label");
b0.SimpleName("label");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("StartEvent");
b0.SimpleName("triggerEvent");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Sequence");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObjects");
b0.SimpleName("flowObjects");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("Parallel");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObjects");
b0.SimpleName("flowObjects");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("FlowObjects");
b0.Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("FlowObject");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("ForeachLoop");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(4);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Variable");
b0.SimpleName("compositeVariable");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Variable");
b0.SimpleName("elementVariable");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Variable");
b0.SimpleName("indexVariable");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("WhileLoop");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("TestTime");
b0.SimpleName("testTime");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Condition");
b0.SimpleName("condition");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers();
b0.SimpleName("TestTime");
b0.Types();
b0.EnumValues_(2);
b0.EnumValue("before");
b0.EnumValue("after");
b0._EnumValues();
b0._EnumEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("PickControl");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("EventHandlers");
b0.SimpleName("eventHandlers");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("SwitchControl");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("SwitchType");
b0.SimpleName("switchType");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("ConditionalCases");
b0.SimpleName("conditionalCases");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("DefaultCase");
b0.SimpleName("defaultCase");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers();
b0.SimpleName("SwitchType");
b0.Types();
b0.EnumValues_(2);
b0.EnumValue("exclusive");
b0.EnumValue("inclusive");
b0._EnumValues();
b0._EnumEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("ConditionalCases");
b0.Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("ConditionalCase");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("ConditionalCase");
b0.Types();
b0.Features_(4);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Label");
b0.SimpleName("label");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Condition");
b0.SimpleName("condition");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("DefaultCase");
b0.Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("FlowObject");
b0.SimpleName("flowObject");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("StartEvent");
b0.Types_(1);
b0.SimpleName("Event");
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("name");
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Label");
b0.SimpleName("label");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("FlowEvent");
b0.Types_(2);
b0.SimpleName("Event");
b0.SimpleName("FlowObject");
b0._Types();
b0.Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("OnCallEvent");
b0.Types_(1);
b0.SimpleName("StartEvent");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Parameters");
b0.SimpleName("parameters");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("OnMessageEvent");
b0.Types_(1);
b0.SimpleName("StartEvent");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Message");
b0.SimpleName("message");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("OnTimerEvent");
b0.Types_(1);
b0.SimpleName("StartEvent");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Timer");
b0.SimpleName("timer");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("FaultEvent");
b0.Types_(1);
b0.SimpleName("FlowEvent");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Fault");
b0.SimpleName("fault");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("ReturnEvent");
b0.Types_(1);
b0.SimpleName("FlowEvent");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Result");
b0.SimpleName("result");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("Activity");
b0.Types_(1);
b0.SimpleName("FlowObject");
b0._Types();
b0.Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("EmptyActivity");
b0.Types_(1);
b0.SimpleName("Activity");
b0._Types();
b0.Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("AssignActivity");
b0.Types_(1);
b0.SimpleName("Activity");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Assignments");
b0.SimpleName("assignments");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("InvokeActivity");
b0.Types_(1);
b0.SimpleName("Activity");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Invoke");
b0.SimpleName("invoke");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers();
b0.SimpleName("ReceiveActivity");
b0.Types_(1);
b0.SimpleName("Activity");
b0._Types();
b0.Features_(1);
b0.Feature_();
b0.FeatureModifiers();
b0.SimpleName("Receive");
b0.SimpleName("receive");
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.DataEntity_();
b0.EntityModifiers();
b0.SimpleName("Name");
b0.Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers();
b0.SimpleName("Text");
b0.Types_(2);
b0.SimpleName("Description");
b0.SimpleName("Label");
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("Declarations");
b0.Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("Declaration");
b0._CompositeEntity();
b0.CompositeEntity_();
b0.EntityModifiers();
b0.SimpleName("Assignments");
b0.Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("Assign");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("Declaration");
b0.Types();
b0.Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(1);
b0.EntityModifier("abstract");
b0._EntityModifiers();
b0.SimpleName("Assign");
b0.Types();
b0.Features();
b0._SimpleEntity();
b0._ModelDeclarations();
b0.Namespace("org.whole.lang.workflow");
org.whole.lang.commons.builders.ICommonsBuilder b1 = (org.whole.lang.commons.builders.ICommonsBuilder) op.wGetBuilder(org.whole.lang.commons.reflect.CommonsLanguageKit.URI);
b1.Resolver();
b0.URI("http://lang.whole.org/Workflow");
b0._Model();
}
}