001: package allinone;
002:
003: import com.lutris.appserver.server.sql.*;
004: import org.enhydra.dods.*;
005: import allinone.data.*;
006:
007: public class MultiReference2 {
008: void showTables(DBTransaction dbTrans) {
009: try {
010: TableAQuery queryA = new TableAQuery(dbTrans);
011: TableADO[] allADO = queryA.getDOArray();
012: System.err.println();
013: System.err
014: .println("-------------TableA-----begin----------");
015: if (allADO != null) {
016: if (allADO.length > 0)
017: System.err.println("---oid------someData------");
018: for (int i = 0; i < allADO.length; i++) {
019: System.err.print(" " + allADO[i].get_Handle());
020: System.err.print(" " + allADO[i].getSomedata());
021: System.err.println();
022: }
023: } else {
024: System.err.println("noData");
025: }
026: System.err
027: .println("-------------TableA-----end------------");
028:
029: TableBQuery queryB = new TableBQuery(dbTrans);
030: TableBDO[] allBDO = queryB.getDOArray();
031: System.err.println();
032: System.err
033: .println("-------------TableB-----begin----------");
034: if (allBDO != null) {
035: if (allBDO.length > 0)
036: System.err
037: .println("---oid------someData------ref-----ref-----");
038: for (int i = 0; i < allBDO.length; i++) {
039: System.err.print(" " + allBDO[i].get_Handle());
040: System.err.print(" " + allBDO[i].getSomedata());
041: System.err
042: .print(" "
043: + (null != allBDO[i].getReftoa() ? allBDO[i]
044: .getReftoa().getHandle()
045: : "null"));
046: System.err
047: .print(" "
048: + (null != allBDO[i].getReftob() ? allBDO[i]
049: .getReftob().getHandle()
050: : "null"));
051: System.err.println();
052: }
053: } else {
054: System.err.println("noData");
055: }
056: System.err
057: .println("-------------TableB-----end------------");
058:
059: TableCQuery queryC = new TableCQuery(dbTrans);
060: TableCDO[] allCDO = queryC.getDOArray();
061: System.err.println();
062: System.err
063: .println("-------------TableC-----begin----------");
064: if (allCDO != null) {
065: if (allCDO.length > 0)
066: System.err
067: .println("---oid------someData-------ref-----ref-----");
068: for (int i = 0; i < allCDO.length; i++) {
069: System.err.print(" " + allCDO[i].get_Handle());
070: System.err.print(" " + allCDO[i].getSomedata());
071: System.err
072: .print(" "
073: + (null != allCDO[i].getReftoa() ? allCDO[i]
074: .getReftoa().getHandle()
075: : "null"));
076: System.err
077: .print(" "
078: + (null != allCDO[i].getReftob() ? allCDO[i]
079: .getReftob().getHandle()
080: : "null"));
081: System.err.println();
082: }
083: } else {
084: System.err.println("noData");
085: }
086: System.err
087: .println("-------------TableC-----end------------");
088:
089: } catch (Exception e) {
090: e.printStackTrace();
091: }
092: }
093:
094: public void runTest(DBTransaction dbTrans1) {
095: try {
096: boolean autoWrite = ((StandardDatabaseManager) DODS
097: .getDatabaseManager())
098: .getDatabaseManagerConfiguration().getAutoWrite();
099: System.err
100: .println("___ - + * startin another MultRef * + - ___");
101: showTables(dbTrans1);
102:
103: TableADO tableA1 = TableADO.createVirgin(dbTrans1);
104: tableA1.setSomedata("tableA1");
105: tableA1.save();
106: if (!autoWrite)
107: dbTrans1.write();
108:
109: TableBDO tableB1 = TableBDO.createVirgin(dbTrans1);
110: tableB1.setSomedata("tableB1");
111: tableB1.setReftoa(tableA1);
112: tableB1.save();
113: TableBDO tableB4 = TableBDO.createVirgin(dbTrans1);
114: tableB4.setSomedata("tableB4");
115: tableB4.setReftoa(tableA1);
116: tableB4.setReftob(tableB1);
117: tableB4.save(dbTrans1);
118: if (!autoWrite)
119: dbTrans1.write();
120:
121: TableCDO tableC1 = TableCDO.createVirgin(dbTrans1);
122: tableC1.setSomedata("tableC1");
123: tableC1.setReftob(tableB4);
124: tableC1.save();
125: if (!autoWrite)
126: dbTrans1.write();
127:
128: System.err.println("rows inserted");
129: showTables(dbTrans1);
130: /**/
131: System.err.print("delete1 --- ");
132: tableA1.delete(dbTrans1);
133: if (!autoWrite)
134: dbTrans1.write();
135: /**/
136: if (null != dbTrans1)
137: dbTrans1.commit();
138:
139: System.err
140: .println("that's all folks, table are empty now, I hope :) ");
141: showTables(dbTrans1);
142: } catch (Exception ex) {
143: System.err.println(ex.toString());
144: ex.printStackTrace();
145: }
146: }
147: }
|