Files
Brainstorm/Foundation Test/Model Test/metadata.xml
2014-05-30 10:31:51 -07:00

114 lines
7.5 KiB
XML

<?xml version="1.0"?>
<!-- com.foundation.model.test.TestApplication -->
<repository name='MySQL' class='com.foundation.transaction.jdbc.mysql.MySQLRepositoryManager'>
<properties user-name='test' user-password='test' database-url='jdbc:mysql://localhost/test'/>
<class name="com.foundation.model.test.KeyTest" repository-class="KEY_TEST">
<attribute name="id" type="Integer" repository-name="ID" repository-type="INTEGER" is-key="true" is-auto-generated="true"/>
<attribute name="keys" type="byte[]" repository-name="KEYS" repository-type="LONGBLOB"/>
</class>
<class name="com.foundation.model.LogicalObjectChangeLog" repository-class="LOGICAL_OBJECT_CHANGE_LOG">
<attribute name="objectId" type="java.lang.Long" repository-name="VERSION_ID" repository-type="BIGINT"/>
<attribute name="version" repository-name="VERSION" repository-type="BIGINT"/>
<attribute name="changes" repository-name="CHANGES" repository-type="BLOB"/>
</class>
<class name="com.foundation.model.LogicalObjectMetadata" repository-class="LOGICAL_OBJECT">
<attribute name="logicalObjectId" type="java.lang.Long" repository-name="ID" repository-type="BIGINT"/>
<attribute name="version" type="java.lang.Long" repository-name="VERSION" repository-type="BIGINT"/>
<attribute name="lastObjectId" type="java.lang.Long" repository-name="LAST_OBJECT_ID" repository-type="BIGINT"/>
</class>
<class name="com.foundation.model.test.StatelessData" repository-class="STATELESS_DATA">
<attribute name='id' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute name="text" type="java.lang.String" repository-name="TEXT" repository-type="VARCHAR"/>
<attribute name="logicalObjectId" type="java.lang.Long" repository-name="ID" repository-type="BIGINT" metadata="logical object id" repository-class="LOGICAL_OBJECT" is-auto-generated='true' is-key='true'>
<join repository-name="LO_ID"/>
</attribute>
<attribute name='objectId' type="java.lang.Long" repository-name="O_ID" repository-type="BIGINT"/>
<attribute name="version" type="java.lang.Long" repository-name="VERSION" repository-type="BIGINT" metadata="version" repository-class="LOGICAL_OBJECT"/>
<!--
Another example which works the same as above (or should).
<attribute name="versionId" type="java.lang.Integer" repository-name="ID" repository-type="INTEGER" metadata="version id">
<join repository-name="VERSION_ID" repository-class="VERSION"/>
</attribute>
-->
</class>
<class class-name='com.foundation.model.test.ClassA' repository-name='CLASS_A'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='classBKey' repository-name='B_ID' repository-type='INTEGER'/>
<attribute attribute-name='classCKey' repository-name='C_ID' repository-type='INTEGER'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.ClassB' repository-name='CLASS_B'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.ClassC' repository-name='CLASS_C'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.ClassD' repository-name='CLASS_D'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='classAKey' repository-name='A_ID' repository-type='INTEGER'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.Widget' repository-name='WIDGET'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='classAKey' repository-name='A_ID' repository-type='INTEGER'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.Gadget' repository-name='GADGET'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='classAKey' repository-name='A_ID' repository-type='INTEGER'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.Thing' repository-name='THING'>
<attribute attribute-name='key' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.ClassAThing' repository-name='CLASS_A_THING'>
<attribute attribute-name='classAKey' repository-name='A_ID' repository-type='INTEGER' is-key='true'/>
<attribute attribute-name='thingKey' repository-name='THING_ID' repository-type='INTEGER' is-key='true'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.Employee' repository-name='EMPLOYEE'>
<attribute attribute-name='id' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.Employer' repository-name='EMPLOYER'>
<attribute attribute-name='id' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='employeeCount' repository-name='EMPLOYEE_COUNT' repository-type='INTEGER'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.EmployeeEmployerMap' repository-name='EMPLOYEE_EMPLOYER_MAP'>
<attribute attribute-name='employeeId' repository-name='EMPLOYEE_ID' repository-type='INTEGER' is-key='true'/>
<attribute attribute-name='employerId' repository-name='EMPLOYER_ID' repository-type='INTEGER' is-key='true'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.DbProduct' repository-name='DBPRODUCT'>
<attribute attribute-name='id' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='cost' attribute-type="BigDecimal" repository-name='COST' repository-type='DECIMAL'/>
<attribute attribute-name='price' attribute-type="BigDecimal" repository-name='PRICE' repository-type='DECIMAL'/>
<properties/>
</class>
<class class-name='com.foundation.model.test.DbPart' repository-name='DBPART'>
<attribute attribute-name='id' repository-name='ID' repository-type='INTEGER' is-key='true' is-auto-generated='true'/>
<attribute attribute-name='name' repository-name='NAME' repository-type='VARCHAR'/>
<attribute attribute-name='cost' attribute-type="BigDecimal" repository-name='COST' repository-type='DECIMAL'/>
<attribute attribute-name='price' attribute-type="BigDecimal" repository-name='PRICE' repository-type='DECIMAL'/>
<properties/>
</class>
</repository>