package org.whole.lang.models.codebase;
import org.whole.lang.builders.IBuilderOperation;
import org.whole.lang.templates.AbstractTemplateFactory;
public class RDBModel 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("RDB");
b0.TypeRelations_(0);
b0._TypeRelations();
b0.ModelDeclarations_(29);
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Database");
b0.Types_(0);
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("URI");
b0.SimpleName("uri");
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._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Namespace");
b0.SimpleName("namespace");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Schemas");
b0.SimpleName("schemas");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Schemas");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("Schema");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Schema");
b0.Types_(0);
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(2);
b0.FeatureModifier("id");
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("modelName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Tables");
b0.SimpleName("tables");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Tables");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("Table");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Table");
b0.Types_(0);
b0._Types();
b0.Features_(7);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("entityName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Columns");
b0.SimpleName("columns");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("PrimaryKey");
b0.SimpleName("primaryKey");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("ForeignKeys");
b0.SimpleName("foreignKeys");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Indices");
b0.SimpleName("indices");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("remarks");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Columns");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("ordered");
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("Column");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Column");
b0.Types_(0);
b0._Types();
b0.Features_(9);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("featureName");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Name");
b0.SimpleName("featureType");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Type");
b0.SimpleName("type");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IntData");
b0.SimpleName("size");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IntData");
b0.SimpleName("decimals");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("BooleanData");
b0.SimpleName("nullable");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("defaultValue");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("remarks");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("PrimaryKey");
b0.Types_(0);
b0._Types();
b0.Features_(3);
b0.Feature_();
b0.FeatureModifiers_(2);
b0.FeatureModifier("id");
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("IdMethod");
b0.SimpleName("idMethod");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnNames");
b0.SimpleName("columnNames");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnNames");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("ordered");
b0.ComponentModifier("unique");
b0._ComponentModifiers();
b0.SimpleName("StringData");
b0._CompositeEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ForeignKeys");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("ForeignKey");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ForeignKey");
b0.Types_(0);
b0._Types();
b0.Features_(6);
b0.Feature_();
b0.FeatureModifiers_(2);
b0.FeatureModifier("id");
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("targetTable");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Action");
b0.SimpleName("updateAction");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Action");
b0.SimpleName("deleteAction");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("Deferrability");
b0.SimpleName("deferrability");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnReferences");
b0.SimpleName("columnReferences");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnReferences");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("ColumnReference");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnReference");
b0.Types_(0);
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("source");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("target");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Indices");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(1);
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("Index");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Index");
b0.Types_(0);
b0._Types();
b0.Features_(5);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(2);
b0.FeatureModifier("id");
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("qualifier");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("BooleanData");
b0.SimpleName("unique");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("optional");
b0._FeatureModifiers();
b0.SimpleName("IndexType");
b0.SimpleName("type");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("ColumnIndices");
b0.SimpleName("columnIndices");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.CompositeEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnIndices");
b0.Types_(0);
b0._Types();
b0.ComponentModifiers_(2);
b0.ComponentModifier("unique");
b0.ComponentModifier("ordered");
b0._ComponentModifiers();
b0.SimpleName("ColumnIndex");
b0._CompositeEntity();
b0.SimpleEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("ColumnIndex");
b0.Types_(0);
b0._Types();
b0.Features_(2);
b0.Feature_();
b0.FeatureModifiers_(1);
b0.FeatureModifier("id");
b0._FeatureModifiers();
b0.SimpleName("StringData");
b0.SimpleName("name");
b1.Resolver();
b0._Feature();
b0.Feature_();
b0.FeatureModifiers_(0);
b0._FeatureModifiers();
b0.SimpleName("Order");
b0.SimpleName("order");
b1.Resolver();
b0._Feature();
b0._Features();
b0._SimpleEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Type");
b0.Types_(0);
b0._Types();
b0.EnumValues_(27);
b0.EnumValue("BOOLEAN");
b0.EnumValue("TINYINT");
b0.EnumValue("SMALLINT");
b0.EnumValue("INTEGER");
b0.EnumValue("BIGINT");
b0.EnumValue("FLOAT");
b0.EnumValue("REAL");
b0.EnumValue("DOUBLE");
b0.EnumValue("NUMERIC");
b0.EnumValue("DECIMAL");
b0.EnumValue("CHAR");
b0.EnumValue("VARCHAR");
b0.EnumValue("TEXT");
b0.EnumValue("DATE");
b0.EnumValue("TIME");
b0.EnumValue("TIMESTAMP");
b0.EnumValue("LONGVARBINARY");
b0.EnumValue("LONGVARCHAR");
b0.EnumValue("BINARY");
b0.EnumValue("ARRAY");
b0.EnumValue("BIT");
b0.EnumValue("BLOB");
b0.EnumValue("CLOB");
b0.EnumValue("DATALINK");
b0.EnumValue("DOUBLE");
b0.EnumValue("REF");
b0.EnumValue("VARBINARY");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IndexType");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("HASHED");
b0.EnumValue("CLUSTERED");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Order");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("ASCENDING");
b0.EnumValue("DESCENDING");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IdMethod");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("IDENTITY");
b0.EnumValue("GENERATED");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Action");
b0.Types_(0);
b0._Types();
b0.EnumValues_(4);
b0.EnumValue("RESTRICT");
b0.EnumValue("CASCADE");
b0.EnumValue("SET_NULL");
b0.EnumValue("SET_DEFAULT");
b0._EnumValues();
b0._EnumEntity();
b0.EnumEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Deferrability");
b0.Types_(0);
b0._Types();
b0.EnumValues_(2);
b0.EnumValue("INITIALLY_DEFERRED");
b0.EnumValue("INITIALLY_IMMEDIATE");
b0._EnumValues();
b0._EnumEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("URI");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Namespace");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("Name");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("StringData");
b0.Types_(0);
b0._Types();
b0.DataType("String");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("IntData");
b0.Types_(0);
b0._Types();
b0.DataType("int");
b0._DataEntity();
b0.DataEntity_();
b0.EntityModifiers_(0);
b0._EntityModifiers();
b0.SimpleName("BooleanData");
b0.Types_(0);
b0._Types();
b0.DataType("boolean");
b0._DataEntity();
b0._ModelDeclarations();
b0.Namespace("org.whole.lang.rdb");
b1.Resolver();
b0.URI("http://lang.whole.org/RDB");
b0._Model();
}
}