package org.whole.lang.grammars.util.tests;
import org.whole.lang.model.IEntity;
import org.whole.lang.templates.AbstractTemplateFactory;
import org.whole.lang.templates.AbstractTemplateManager;
import org.whole.lang.templates.ITemplateFactory;
public class GrammarBasedPrettyPrinterVisitorTestTemplateManager extends AbstractTemplateManager {
private static class SingletonHolder {
private static final GrammarBasedPrettyPrinterVisitorTestTemplateManager instance = new GrammarBasedPrettyPrinterVisitorTestTemplateManager();
}
public static GrammarBasedPrettyPrinterVisitorTestTemplateManager instance() {
return SingletonHolder.instance;
}
private GrammarBasedPrettyPrinterVisitorTestTemplateManager() {
put("fragment", newFragment());
put("fragment1", newFragment1());
put("fragment2", newFragment2());
put("fragment3", newFragment3());
put("fragment4", newFragment4());
}
public ITemplateFactory<IEntity> newFragment() {
return new AbstractTemplateFactory<IEntity>() {
public void apply(org.whole.lang.builders.IBuilderOperation op) {
org.whole.lang.workflows.builders.IWorkflowsBuilder b0 = (org.whole.lang.workflows.builders.IWorkflowsBuilder) op.wGetBuilder(org.whole.lang.workflows.reflect.WorkflowsLanguageKit.URI);
b0.Sequence_();
b0.Text("sequence");
b0.FlowObjects_(2);
b0.LoadModel_();
b0.Text("load Deployer Workflow");
b0.Variable("deployerWorkflow");
b0.StringLiteral("org.whole.lang.xml.codebase.XmlBuilderPersistenceKit");
b0.ResourceKind("CLASSPATH");
b0.StringLiteral("org/whole/lang/grammars/util/tests/GrammarsDeployer.xwl");
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._LoadModel();
b0.InvokeOperation_();
b0.Text("interpret Deployer Workflow");
b0.Variable("deployerWorkflow");
b0.Operation("INTERPRETER");
b1.Resolver();
b0._InvokeOperation();
b0._FlowObjects();
b0._Sequence();
}
};
}
public ITemplateFactory<IEntity> newFragment1() {
return new AbstractTemplateFactory<IEntity>() {
public void apply(org.whole.lang.builders.IBuilderOperation op) {
org.whole.lang.workflows.builders.IWorkflowsBuilder b0 = (org.whole.lang.workflows.builders.IWorkflowsBuilder) op.wGetBuilder(org.whole.lang.workflows.reflect.WorkflowsLanguageKit.URI);
b0.Sequence_();
b0.Text("sequence");
b0.FlowObjects_(2);
b0.InvokeJavaClassMethod_();
b0.Text("pretty print string from model with fragments");
b0.Variable("toStringFromModel");
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.StringLiteral("org.whole.lang.operations.PrettyPrinterOperation");
b0.StringLiteral("toPrettyPrintString(org.whole.lang.model.IEntity)");
b0.Expressions_(1);
b1.StageUpFragment_();
org.whole.lang.reflect.EntityDescriptorEnum e2 = org.whole.lang.reflect.ReflectionFactory.getLanguageKit("http://tests.lang.whole.org/StateMachine2").getEntityDescriptorEnum();
b1.wEntity_(e2.valueOf("StateMachine"));
b1.wEntity_(e2.valueOf("Events"), 5);
b1.wEntity_(e2.valueOf("Event"));
b1.StageDownFragment_();
org.whole.lang.queries.builders.IQueriesBuilder b3 = (org.whole.lang.queries.builders.IQueriesBuilder) op.wGetBuilder(org.whole.lang.queries.reflect.QueriesLanguageKit.URI);
b3.Addition_();
b3.StringLiteral("door");
b3.StringLiteral("Closed");
b3._Addition();
b1._StageDownFragment();
b1.wEntity(e2.valueOf("ID"), "D1CL");
b1._wEntity(e2.valueOf("Event"));
b1.wEntity_(e2.valueOf("Event"));
b1.SameStageFragment_();
b3.StringLiteral("drawOpened");
b1._SameStageFragment();
b1.wEntity(e2.valueOf("ID"), "D2OP");
b1._wEntity(e2.valueOf("Event"));
b1.wEntity_(e2.valueOf("Event"));
b1.StageUpFragment_();
b3.StringLiteral("lightOn");
b1._StageUpFragment();
b1.wEntity(e2.valueOf("ID"), "L1ON");
b1._wEntity(e2.valueOf("Event"));
b1.wEntity_(e2.valueOf("Event"));
b1.wEntity(e2.valueOf("ID"), "doorOpened");
b1.wEntity(e2.valueOf("ID"), "D1OP");
b1._wEntity(e2.valueOf("Event"));
b1.wEntity_(e2.valueOf("Event"));
b1.wEntity(e2.valueOf("ID"), "panelClosed");
b1.wEntity(e2.valueOf("ID"), "PNCL");
b1._wEntity(e2.valueOf("Event"));
b1._wEntity(e2.valueOf("Events"));
b1.wEntity_(e2.valueOf("ResetEvents"), 1);
b1.wEntity(e2.valueOf("ID"), "doorOpened");
b1._wEntity(e2.valueOf("ResetEvents"));
b1.wEntity_(e2.valueOf("Commands"), 3);
b1.wEntity_(e2.valueOf("Command"));
b1.wEntity(e2.valueOf("ID"), "unlockPanel");
b1.wEntity(e2.valueOf("ID"), "PNUL");
b1._wEntity(e2.valueOf("Command"));
b1.StageUpFragment_();
b1.wEntity_(e2.valueOf("Commands"), 2);
b1.wEntity_(e2.valueOf("Command"));
b1.wEntity(e2.valueOf("ID"), "lockPanel");
b1.wEntity(e2.valueOf("ID"), "PNLK");
b1._wEntity(e2.valueOf("Command"));
b1.wEntity_(e2.valueOf("Command"));
b1.wEntity(e2.valueOf("ID"), "lockDoor");
b1.wEntity(e2.valueOf("ID"), "D1LK");
b1._wEntity(e2.valueOf("Command"));
b1._wEntity(e2.valueOf("Commands"));
b1._StageUpFragment();
b1.wEntity_(e2.valueOf("Command"));
b1.wEntity(e2.valueOf("ID"), "unlockDoor");
b1.wEntity(e2.valueOf("ID"), "D1UL");
b1._wEntity(e2.valueOf("Command"));
b1._wEntity(e2.valueOf("Commands"));
b1.wEntity_(e2.valueOf("States"), 5);
b1.wEntity_(e2.valueOf("State"));
b1.wEntity(e2.valueOf("ID"), "idle");
b1.SameStageFragment_();
b1.wEntity_(e2.valueOf("Actions"), 2);
b1.wEntity(e2.valueOf("ID"), "unlockDoor");
b1.wEntity(e2.valueOf("ID"), "lockPanel");
b1._wEntity(e2.valueOf("Actions"));
b1._SameStageFragment();
b1.wEntity_(e2.valueOf("Transitions"), 1);
b1.wEntity_(e2.valueOf("Transition"));
b1.wEntity(e2.valueOf("ID"), "doorClosed");
b1.wEntity(e2.valueOf("ID"), "active");
b1._wEntity(e2.valueOf("Transition"));
b1._wEntity(e2.valueOf("Transitions"));
b1._wEntity(e2.valueOf("State"));
b1.SameStageFragment_();
b1.wEntity_(e2.valueOf("State"));
b1.wEntity(e2.valueOf("ID"), "active");
b1.Resolver();
b1.wEntity_(e2.valueOf("Transitions"), 2);
b1.wEntity_(e2.valueOf("Transition"));
b1.wEntity(e2.valueOf("ID"), "drawOpened");
b1.wEntity(e2.valueOf("ID"), "waitingForLight");
b1._wEntity(e2.valueOf("Transition"));
b1.wEntity_(e2.valueOf("Transition"));
b1.wEntity(e2.valueOf("ID"), "lightOn");
b1.wEntity(e2.valueOf("ID"), "waitingForDraw");
b1._wEntity(e2.valueOf("Transition"));
b1._wEntity(e2.valueOf("Transitions"));
b1._wEntity(e2.valueOf("State"));
b1._SameStageFragment();
b1.wEntity_(e2.valueOf("State"));
b1.wEntity(e2.valueOf("ID"), "waitingForLight");
b1.Resolver();
b1.wEntity_(e2.valueOf("Transitions"), 1);
b1.wEntity_(e2.valueOf("Transition"));
b1.wEntity(e2.valueOf("ID"), "lightOn");
b1.wEntity(e2.valueOf("ID"), "unlockedPanel");
b1._wEntity(e2.valueOf("Transition"));
b1._wEntity(e2.valueOf("Transitions"));
b1._wEntity(e2.valueOf("State"));
b1.wEntity_(e2.valueOf("State"));
b1.wEntity(e2.valueOf("ID"), "waitingForDraw");
b1.Resolver();
b1.wEntity_(e2.valueOf("Transitions"), 1);
b1.wEntity_(e2.valueOf("Transition"));
b1.wEntity(e2.valueOf("ID"), "drawOpened");
b1.wEntity(e2.valueOf("ID"), "unlockedPanel");
b1._wEntity(e2.valueOf("Transition"));
b1._wEntity(e2.valueOf("Transitions"));
b1._wEntity(e2.valueOf("State"));
b1.wEntity_(e2.valueOf("State"));
b1.wEntity(e2.valueOf("ID"), "unlockedPanel");
b1.wEntity_(e2.valueOf("Actions"), 2);
b1.wEntity(e2.valueOf("ID"), "unlockPanel");
b1.wEntity(e2.valueOf("ID"), "lockDoor");
b1._wEntity(e2.valueOf("Actions"));
b1.wEntity_(e2.valueOf("Transitions"), 1);
b1.wEntity_(e2.valueOf("Transition"));
b1.wEntity(e2.valueOf("ID"), "panelClosed");
b1.wEntity(e2.valueOf("ID"), "idle");
b1._wEntity(e2.valueOf("Transition"));
b1._wEntity(e2.valueOf("Transitions"));
b1._wEntity(e2.valueOf("State"));
b1._wEntity(e2.valueOf("States"));
b1._wEntity(e2.valueOf("StateMachine"));
b1._StageUpFragment();
b0._Expressions();
b0._InvokeJavaClassMethod();
b0.LoadModel_();
b0.Text("loadmodel");
b1.Resolver();
b0.StringLiteral("org.whole.lang.text.codebase.TextSourcePersistenceKit");
b0.ResourceKind("VARIABLE");
b0.Variable("toStringFromModel");
b1.Resolver();
b0._LoadModel();
b0._FlowObjects();
b0._Sequence();
}
};
}
public ITemplateFactory<IEntity> newFragment2() {
return new AbstractTemplateFactory<IEntity>() {
public void apply(org.whole.lang.builders.IBuilderOperation op) {
org.whole.lang.text.builders.ITextBuilder b0 = (org.whole.lang.text.builders.ITextBuilder) op.wGetBuilder(org.whole.lang.text.reflect.TextLanguageKit.URI);
b0.Document_(35);
b0.Row_(1);
b0.Text("events");
b0._Row();
b0.Row_(1);
b0.Text("\tdoorClosed\tD1CL");
b0._Row();
b0.Row_(1);
b0.Text("\tdrawOpened\tD2OP");
b0._Row();
b0.Row_(1);
b0.Text("\tlightOn\tL1ON");
b0._Row();
b0.Row_(1);
b0.Text("\tdoorOpened\tD1OP");
b0._Row();
b0.Row_(1);
b0.Text("\tpanelClosed\tPNCL");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("resetEvents");
b0._Row();
b0.Row_(1);
b0.Text("\tdoorOpened");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("commands");
b0._Row();
b0.Row_(1);
b0.Text("\tunlockPanel\tPNUL");
b0._Row();
b0.Row_(1);
b0.Text("\tlockPanel\tPNLK");
b0._Row();
b0.Row_(1);
b0.Text("\tlockDoor\tD1LK");
b0._Row();
b0.Row_(1);
b0.Text("\tunlockDoor\tD1UL");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("state idle");
b0._Row();
b0.Row_(1);
b0.Text("\tactions {unlockDoor lockPanel}");
b0._Row();
b0.Row_(1);
b0.Text("\tdoorClosed => active");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("state active");
b0._Row();
b0.Row_(1);
b0.Text("\tdrawOpened => waitingForLight");
b0._Row();
b0.Row_(1);
b0.Text("\tlightOn => waitingForDraw");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("state waitingForLight");
b0._Row();
b0.Row_(1);
b0.Text("\tlightOn => unlockedPanel");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("state waitingForDraw");
b0._Row();
b0.Row_(1);
b0.Text("\tdrawOpened => unlockedPanel");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("state unlockedPanel");
b0._Row();
b0.Row_(1);
b0.Text("\tactions {unlockPanel lockDoor}");
b0._Row();
b0.Row_(1);
b0.Text("\tpanelClosed => idle");
b0._Row();
b0.Row_(1);
b0.Text("end");
b0._Row();
b0.Row_(1);
b0.Text("");
b0._Row();
b0._Document();
}
};
}
public ITemplateFactory<IEntity> newFragment3() {
return new AbstractTemplateFactory<IEntity>() {
public void apply(org.whole.lang.builders.IBuilderOperation op) {
org.whole.lang.workflows.builders.IWorkflowsBuilder b0 = (org.whole.lang.workflows.builders.IWorkflowsBuilder) op.wGetBuilder(org.whole.lang.workflows.reflect.WorkflowsLanguageKit.URI);
b0.Sequence_();
b0.Text("sequence");
b0.FlowObjects_(2);
b0.InvokeJavaClassMethod_();
b0.Text("pretty print string from model");
b0.Variable("toStringFromModel");
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.StringLiteral("org.whole.lang.operations.PrettyPrinterOperation");
b0.StringLiteral("toPrettyPrintString(org.whole.lang.model.IEntity)");
b0.Expressions_(1);
b1.StageUpFragment_();
org.whole.lang.reflect.EntityDescriptorEnum e2 = org.whole.lang.reflect.ReflectionFactory.getLanguageKit("http://tests.lang.whole.org/DataTypes").getEntityDescriptorEnum();
b1.wEntity_(e2.valueOf("DataTypes"), 11);
b1.wEntity(e2.valueOf("BooleanLiteral"), false);
b1.wEntity(e2.valueOf("EnumType"), "x one");
b1.wEntity(e2.valueOf("DecimalLiteral"), "12345,500000");
b1.wEntity(e2.valueOf("IntLiteral"), 12345l);
b1.wEntity(e2.valueOf("EnumType"), "two");
b1.wEntity(e2.valueOf("EnumType"), "three");
b1.wEntity(e2.valueOf("DateLiteral"), new java.util.Date(1072828800000l));
b1.wEntity(e2.valueOf("DateTimeLiteral"), new java.util.Date(1232557846120l));
b1.wEntity(e2.valueOf("BooleanLiteral"), true);
b1.wEntity(e2.valueOf("StringLiteral"), "ciao");
b1.wEntity(e2.valueOf("DecimalLiteral"), "-123,456000");
b1._wEntity(e2.valueOf("DataTypes"));
b1._StageUpFragment();
b0._Expressions();
b0._InvokeJavaClassMethod();
b0.LoadModel_();
b0.Text("loadmodel");
b1.Resolver();
b0.StringLiteral("org.whole.lang.text.codebase.TextSourcePersistenceKit");
b0.ResourceKind("VARIABLE");
b0.Variable("toStringFromModel");
b1.Resolver();
b0._LoadModel();
b0._FlowObjects();
b0._Sequence();
}
};
}
public ITemplateFactory<IEntity> newFragment4() {
return new AbstractTemplateFactory<IEntity>() {
public void apply(org.whole.lang.builders.IBuilderOperation op) {
org.whole.lang.text.builders.ITextBuilder b0 = (org.whole.lang.text.builders.ITextBuilder) op.wGetBuilder(org.whole.lang.text.reflect.TextLanguageKit.URI);
b0.Document_(19);
b0.Row_(1);
b0.Text("{");
b0._Row();
b0.Row_(1);
b0.Text(" false");
b0._Row();
b0.Row_(1);
b0.Text("");
b0._Row();
b0.Row_(1);
b0.Text("");
b0._Row();
b0.Row_(1);
b0.Text(" ;");
b0._Row();
b0.Row_(1);
b0.Text(" x one;");
b0._Row();
b0.Row_(1);
b0.Text(" 12345,500000;");
b0._Row();
b0.Row_(1);
b0.Text(" 12345;");
b0._Row();
b0.Row_(1);
b0.Text(" two;");
b0._Row();
b0.Row_(1);
b0.Text(" three;");
b0._Row();
b0.Row_(1);
b0.Text(" 31/12/2003;");
b0._Row();
b0.Row_(1);
b0.Text(" 2009-01-21T17:10:46.120Z;");
b0._Row();
b0.Row_(1);
b0.Text(" true");
b0._Row();
b0.Row_(1);
b0.Text("");
b0._Row();
b0.Row_(1);
b0.Text("");
b0._Row();
b0.Row_(1);
b0.Text(" ;");
b0._Row();
b0.Row_(1);
b0.Text(" \"ciao\";");
b0._Row();
b0.Row_(1);
b0.Text(" -123,456000");
b0._Row();
b0.Row_(1);
b0.Text("}");
b0._Row();
b0._Document();
}
};
}
}