svnno****@sourc*****
svnno****@sourc*****
2008年 10月 26日 (日) 02:34:32 JST
Revision: 2047 http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=jiemamy&view=rev&rev=2047 Author: daisuke_m Date: 2008-10-26 02:34:32 +0900 (Sun, 26 Oct 2008) Log Message: ----------- refactor Modified Paths: -------------- artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/core/model/ApplicationModelCreator.java -------------- next part -------------- Modified: artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/core/model/ApplicationModelCreator.java =================================================================== --- artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/core/model/ApplicationModelCreator.java 2008-10-25 17:29:29 UTC (rev 2046) +++ artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/core/model/ApplicationModelCreator.java 2008-10-25 17:34:32 UTC (rev 2047) @@ -66,20 +66,23 @@ rootModel.setDescription("シリアライゼーションイメージ"); rootModel.setSchemaName("FOO"); + // ドメインの生成 DomainModel idDomain = rootModel.createJiemamyModel(DomainModel.class).init("ID", new IntegerDataTypeMock()); - rootModel.appendModel(idDomain); idDomain.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); idDomain.addConstraint(rootModel.createJiemamyModel(UniqueConstraintModel.class).init()); // TODO AUTO_INCREMENTの追加 [CORE-21] + rootModel.appendModel(idDomain); DomainModel nameDomain = rootModel.createJiemamyModel(DomainModel.class).init("NAME", new VarcharDataTypeMock(32)); + nameDomain.setDescription("人名用の型です。"); rootModel.appendModel(nameDomain); - nameDomain.setDescription("人名用の型です。"); // ノードの生成 TableModel deptTable = createDeptTable(idDomain, nameDomain); + rootModel.appendModel(deptTable); TableModel empTable = createEmpTable(idDomain, nameDomain); + rootModel.appendModel(empTable); ViewModel highSalView = rootModel.createJiemamyModel(ViewModel.class).init("V_HIGH_SAL_EMP", @@ -88,15 +91,15 @@ rootModel.appendModel(highSalView); StickyModel sticky = rootModel.createJiemamyModel(StickyModel.class).init(); + sticky.setContents("メモーー"); rootModel.appendModel(sticky); - sticky.setContents("メモーー"); // コネクションの生成・追加 ForeignKeyModel fkEmpEmp = createForeignKey(empTable, empTable, "MGR_ID"); - rootModel.appendModel(fkEmpEmp); fkEmpEmp.setOnDelete(ReferentialAction.SET_NULL); fkEmpEmp.setDeferrable(true); fkEmpEmp.setInitiallyCheckTime(InitiallyCheckTime.DEFERRED); + rootModel.appendModel(fkEmpEmp); ForeignKeyModel fkEmpDept = createForeignKey(deptTable, empTable, "DEPT_ID"); rootModel.appendModel(fkEmpDept); @@ -104,7 +107,6 @@ // ダイアグラム表現の生成・追加(1) DiagramPresentationModel presentation = rootModel.createJiemamyModel(DiagramPresentationModel.class).init("全部表示する"); - rootModel.getAdapter(DiagramPresentations.class).add(presentation); presentation.setName("全部表示する"); presentation.getNodeLayouts().put(empTable, new JmRectangle(360, 60)); presentation.getNodeLayouts().put(deptTable, new JmRectangle(60, 60)); @@ -117,25 +119,26 @@ bendpoints.add(1, new JmPoint(rect.x, Math.max(rect.y - offset, 0))); presentation.getConnectionLayouts().put(fkEmpEmp, bendpoints); presentation.getConnectionLayouts().put(fkEmpDept, new ArrayList<JmPoint>()); // bendpount無し + rootModel.getAdapter(DiagramPresentations.class).add(presentation); // ダイアグラム表現の生成・追加(2) presentation = rootModel.createJiemamyModel(DiagramPresentationModel.class).init("一部表示する"); - rootModel.getAdapter(DiagramPresentations.class).add(presentation); presentation.getNodeLayouts().put(empTable, new JmRectangle(60, 60)); presentation.getNodeLayouts().put(highSalView, new JmRectangle(270, 270)); presentation.getConnectionLayouts().put(fkEmpDept, new ArrayList<JmPoint>()); // bendpount無し + rootModel.getAdapter(DiagramPresentations.class).add(presentation); // データセットの生成・追加(1) InsertDataSetModel dataSetEn = rootModel.createJiemamyModel(InsertDataSetModel.class).init("データ群en"); - rootModel.getInsertDataSets().add(dataSetEn); dataSetEn.getRecords().put(deptTable, createDeptDataSetEn(deptTable)); dataSetEn.getRecords().put(empTable, createEmpDataSetEn(empTable)); + rootModel.getInsertDataSets().add(dataSetEn); // データセットの生成・追加(2) InsertDataSetModel dataSetJa = rootModel.createJiemamyModel(InsertDataSetModel.class).init("データ群ja"); - rootModel.getInsertDataSets().add(dataSetJa); dataSetJa.getRecords().put(deptTable, createDeptDataSetJa(deptTable)); dataSetJa.getRecords().put(empTable, createEmpDataSetJa(empTable)); + rootModel.getInsertDataSets().add(dataSetJa); return rootModel; } @@ -226,31 +229,31 @@ */ private TableModel createDeptTable(DomainModel idDomain, DomainModel nameDomain) { TableModel deptTable = rootModel.createJiemamyModel(TableModel.class).init("T_DEPT"); - rootModel.appendModel(deptTable); deptTable.setBeginScript("/* test begin script */"); deptTable.setDescription("部署マスタです。"); ColumnModel idColumn = rootModel.createJiemamyModel(ColumnModel.class).init("ID", idDomain); - deptTable.getColumns().add(idColumn); idColumn.addConstraint(rootModel.createJiemamyModel(PrimaryKeyConstraintModel.class).init()); idColumn.setLogicalName("部署ID"); + deptTable.getColumns().add(idColumn); ColumnModel noColumn = rootModel.createJiemamyModel(ColumnModel.class).init("DEPT_NO", new IntegerDataTypeMock()); + noColumn.setLogicalName("部署番号"); deptTable.getColumns().add(noColumn); - noColumn.setLogicalName("部署番号"); ColumnModel deptNameColumn = rootModel.createJiemamyModel(ColumnModel.class).init("DEPT_NAME", new VarcharDataTypeMock(20)); - deptTable.getColumns().add(deptNameColumn); deptNameColumn.setLogicalName("部署名"); deptNameColumn.setRepresentation(true); + deptTable.getColumns().add(deptNameColumn); ColumnModel locColumn = rootModel.createJiemamyModel(ColumnModel.class).init("LOC", new VarcharDataTypeMock(20)); - deptTable.getColumns().add(locColumn); locColumn.setLogicalName("ロケーション"); locColumn.setDefaultValue("secret"); + deptTable.getColumns().add(locColumn); + return deptTable; } @@ -444,49 +447,48 @@ */ private TableModel createEmpTable(DomainModel idDomain, DomainModel nameDomain) { TableModel empTable = rootModel.createJiemamyModel(TableModel.class).init("T_EMP"); - rootModel.appendModel(empTable); empTable.setLogicalName("従業員"); empTable.setBeginScript("/* test end script */"); empTable.setDescription("従業員マスタです。"); ColumnModel idColumn = rootModel.createJiemamyModel(ColumnModel.class).init("ID", idDomain); - empTable.getColumns().add(idColumn); idColumn.addConstraint(rootModel.createJiemamyModel(PrimaryKeyConstraintModel.class).init()); idColumn.setLogicalName("従業員ID"); + empTable.getColumns().add(idColumn); ColumnModel noColumn = rootModel.createJiemamyModel(ColumnModel.class).init("EMP_NO", new IntegerDataTypeMock()); - empTable.getColumns().add(noColumn); noColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); noColumn.setLogicalName("従業員番号"); + empTable.getColumns().add(noColumn); ColumnModel nameColumn = rootModel.createJiemamyModel(ColumnModel.class).init("EMP_NAME", nameDomain); - empTable.getColumns().add(nameColumn); nameColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); nameColumn.setLogicalName("従業員名"); nameColumn.setDefaultValue("no name"); nameColumn.setSimpleIndex(true); nameColumn.setRepresentation(true); + empTable.getColumns().add(nameColumn); ColumnModel mgrColumn = rootModel.createJiemamyModel(ColumnModel.class).init("MGR_ID", new IntegerDataTypeMock()); + nameColumn.setLogicalName("上司ID"); empTable.getColumns().add(mgrColumn); - nameColumn.setLogicalName("上司ID"); ColumnModel hireColumn = rootModel.createJiemamyModel(ColumnModel.class).init("HIREDATE", new TimestampDataTypeMock()); + hireColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); empTable.getColumns().add(hireColumn); - hireColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); ColumnModel salColumn = rootModel.createJiemamyModel(ColumnModel.class).init("SAL", new NumericDataTypeMock(7, 2)); + salColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); empTable.getColumns().add(salColumn); - salColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); ColumnModel deptColumn = rootModel.createJiemamyModel(ColumnModel.class).init("DEPT_ID", new IntegerDataTypeMock()); + deptColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); empTable.getColumns().add(deptColumn); - deptColumn.addConstraint(rootModel.createJiemamyModel(NotNullConstraintModel.class).init()); return empTable; }