summaryrefslogtreecommitdiffstats
path: root/sdo-java/trunk-cts/sdo2.1/src/main/java/test/sdo21/tests/TestData/StandardDynamicFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'sdo-java/trunk-cts/sdo2.1/src/main/java/test/sdo21/tests/TestData/StandardDynamicFactory.java')
-rw-r--r--sdo-java/trunk-cts/sdo2.1/src/main/java/test/sdo21/tests/TestData/StandardDynamicFactory.java226
1 files changed, 226 insertions, 0 deletions
diff --git a/sdo-java/trunk-cts/sdo2.1/src/main/java/test/sdo21/tests/TestData/StandardDynamicFactory.java b/sdo-java/trunk-cts/sdo2.1/src/main/java/test/sdo21/tests/TestData/StandardDynamicFactory.java
new file mode 100644
index 0000000000..872325b059
--- /dev/null
+++ b/sdo-java/trunk-cts/sdo2.1/src/main/java/test/sdo21/tests/TestData/StandardDynamicFactory.java
@@ -0,0 +1,226 @@
+package test.sdo21.tests.TestData;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import commonj.sdo.DataObject;
+import commonj.sdo.Type;
+import commonj.sdo.helper.HelperContext;
+import commonj.sdo.helper.TypeHelper;
+
+public class StandardDynamicFactory extends StandardFactory {
+
+ public void defineMetaData(HelperContext hc) {
+ TypeHelper types = hc.getTypeHelper();
+
+ Type t = types.getType(TEST_NAMESPACE, "Abstract");
+ if (t != null) {
+ // the test types have already been defined in this HelperContext (this will happen when the
+ // implementation being tested does not support multiple contexts, which is not a 2.1 requirement).
+ return;
+ }
+
+ Type stringType = types.getType("commonj.sdo", "String");
+ Type intType = types.getType("commonj.sdo", "Int");
+ Type booleanType = types.getType("commonj.sdo", "Boolean");
+ Type byteType = types.getType("commonj.sdo", "Byte");
+ Type decimalType = types.getType("commonj.sdo", "Decimal");
+ Type floatType = types.getType("commonj.sdo", "Float");
+ Type doubleType = types.getType("commonj.sdo", "Double");
+ Type dateType = types.getType("commonj.sdo", "Date");
+ Type shortType = types.getType("commonj.sdo", "Short");
+ Type longType = types.getType("commonj.sdo", "Long");
+ Type bytesType = types.getType("commonj.sdo", "Bytes");
+ Type integerType = types.getType("commonj.sdo", "Integer");
+ Type charType = types.getType("commonj.sdo", "Character");
+
+ DataObject abstractTypeDO = hc.getDataFactory().create("commonj.sdo", "Type");
+ abstractTypeDO.set("uri", TEST_NAMESPACE);
+ abstractTypeDO.set("name", "Abstract");
+ abstractTypeDO.setBoolean("abstract", true);
+
+ DataObject firstProperty = abstractTypeDO.createDataObject("property");
+ firstProperty.set("name", "firstName");
+ firstProperty.set("type", stringType);
+
+ DataObject lastProperty = abstractTypeDO.createDataObject("property");
+ lastProperty.set("name", "lastName");
+ lastProperty.set("type", stringType);
+
+ Type abstractType = types.define(abstractTypeDO);
+
+ DataObject extendedTypeDO = hc.getDataFactory().create("commonj.sdo", "Type");
+ extendedTypeDO.set("uri", TEST_NAMESPACE);
+ extendedTypeDO.set("name", EXT_TYPE);
+
+ List baseTypes = new ArrayList();
+ baseTypes.add(abstractType);
+ extendedTypeDO.setList("baseType", baseTypes);
+
+ DataObject middleName = extendedTypeDO.createDataObject("property");
+ middleName.set("name", "middleName");
+ middleName.set("type", stringType);
+
+ DataObject nickName = extendedTypeDO.createDataObject("property");
+ nickName.set("name", "nickName");
+ nickName.set("type", stringType);
+
+ Type extendedType = types.define(extendedTypeDO);
+
+ DataObject sequenceTypeDO = hc.getDataFactory().create("commonj.sdo", "Type");
+ sequenceTypeDO.set("uri", TEST_NAMESPACE);
+ sequenceTypeDO.set("name", SEQ_TYPE);
+ sequenceTypeDO.setBoolean("sequenced", true);
+
+ // TODO: Uncomment the following when SDOUtil.addAliasName is
+ // implemented
+ /*
+ * aliases.clear(); aliases.add("Seq2"); sequenceTypeDO.set("aliasName",
+ * aliases);
+ */
+
+ DataObject Letters = sequenceTypeDO.createDataObject("property");
+ Letters.set("name", "Letters");
+ Letters.set("type", stringType);
+ Letters.setBoolean("many", true);
+
+ DataObject Numbers = sequenceTypeDO.createDataObject("property");
+ Numbers.set("name", "Numbers");
+ Numbers.set("type", intType);
+ Numbers.setBoolean("many", true);
+
+ DataObject containManySeq = sequenceTypeDO.createDataObject("property");
+ containManySeq.set("name", "containMany");
+ containManySeq.set("type", sequenceTypeDO);
+ containManySeq.setBoolean("many", true);
+ containManySeq.setBoolean("containment", true);
+
+ DataObject containSeq = sequenceTypeDO.createDataObject("property");
+ containSeq.set("name", "contain");
+ containSeq.set("type", sequenceTypeDO);
+ containSeq.setBoolean("containment", true);
+
+ Type sequenceType = types.define(sequenceTypeDO);
+
+ DataObject openTypeDO = hc.getDataFactory().create("commonj.sdo", "Type");
+ openTypeDO.set("uri", TEST_NAMESPACE);
+ openTypeDO.set("name", "Open");
+ openTypeDO.setBoolean("open", true);
+
+ DataObject definedElem = openTypeDO.createDataObject("property");
+ definedElem.set("name", "defined");
+ definedElem.set("type", stringType);
+
+ Type openType = types.define(openTypeDO);
+
+ DataObject testType = hc.getDataFactory().create("commonj.sdo", "Type");
+ testType.set("uri", TEST_NAMESPACE);
+ testType.set("name", API_TYPE);
+
+ DataObject stringProperty = testType.createDataObject("property");
+ stringProperty.set("name", "stringVal");
+ stringProperty.set("type", stringType);
+
+ DataObject booleanProperty = testType.createDataObject("property");
+ booleanProperty.set("name", "booleanVal");
+ booleanProperty.set("type", booleanType);
+
+ DataObject boolean2Property = testType.createDataObject("property");
+ boolean2Property.set("name", "booleanVal2");
+ boolean2Property.set("type", booleanType);
+
+ DataObject byteProperty = testType.createDataObject("property");
+ byteProperty.set("name", "byteVal");
+ byteProperty.set("type", byteType);
+
+ DataObject string2Property = testType.createDataObject("property");
+ string2Property.set("name", "stringVal2");
+ string2Property.set("type", stringType);
+
+ DataObject decimalProperty = testType.createDataObject("property");
+ decimalProperty.set("name", "decimalVal");
+ decimalProperty.set("type", decimalType);
+
+ DataObject decimal2Property = testType.createDataObject("property");
+ decimal2Property.set("name", "decimalVal2");
+ decimal2Property.set("type", decimalType);
+
+ // TODO: Uncomment the following when SDOUtil.addAliasName is
+ // implemented
+ /*
+ * aliases.clear(); aliases.add("Dec2");
+ * decimal2Property.set("aliasName", aliases);
+ */
+ DataObject intProperty = testType.createDataObject("property");
+ intProperty.set("name", "intVal");
+ intProperty.set("type", intType);
+
+ DataObject floatProperty = testType.createDataObject("property");
+ floatProperty.set("name", "floatVal");
+ floatProperty.set("type", floatType);
+
+ DataObject doubleProperty = testType.createDataObject("property");
+ doubleProperty.set("name", "doubleVal");
+ doubleProperty.set("type", doubleType);
+
+ DataObject dateProperty = testType.createDataObject("property");
+ dateProperty.set("name", "dateVal");
+ dateProperty.set("type", dateType);
+
+ DataObject shortProperty = testType.createDataObject("property");
+ shortProperty.set("name", "shortVal");
+ shortProperty.set("type", shortType);
+
+ DataObject longProperty = testType.createDataObject("property");
+ longProperty.set("name", "longVal");
+ longProperty.set("type", longType);
+
+ DataObject containManyProperty = testType.createDataObject("property");
+ containManyProperty.set("name", "containMany");
+ containManyProperty.setBoolean("many", true);
+ containManyProperty.setBoolean("containment", true);
+ containManyProperty.set("type", testType);
+
+ DataObject bytesProperty = testType.createDataObject("property");
+ bytesProperty.set("name", "bytesVal");
+ bytesProperty.set("type", bytesType);
+
+ DataObject integerProperty = testType.createDataObject("property");
+ integerProperty.set("name", "integerVal");
+ integerProperty.set("type", integerType);
+
+ DataObject charProperty = testType.createDataObject("property");
+ charProperty.set("name", "charVal");
+ charProperty.set("type", charType);
+
+ DataObject readOnlyProperty = testType.createDataObject("property");
+ readOnlyProperty.set("name", "readOnlyVal");
+ readOnlyProperty.set("type", stringType);
+ readOnlyProperty.setBoolean("readOnly", true);
+
+ DataObject sequenceProperty = testType.createDataObject("property");
+ sequenceProperty.set("name", "sequencedElem");
+ sequenceProperty.set("type", sequenceType);
+ sequenceProperty.setBoolean("containment", true);
+
+ DataObject extendProperty = testType.createDataObject("property");
+ extendProperty.set("name", "extendedElem");
+ extendProperty.set("type", extendedType);
+ extendProperty.setBoolean("containment", true);
+
+ DataObject openProperty = testType.createDataObject("property");
+ openProperty.set("name", "openElem");
+ openProperty.set("type", openType);
+ openProperty.setBoolean("containment", true);
+
+ DataObject containProperty = testType.createDataObject("property");
+ containProperty.set("name", "contain");
+ containProperty.setBoolean("containment", true);
+ containProperty.set("type", testType);
+
+ types.define(testType);
+
+ }
+
+
+}