svnno****@sourc*****
svnno****@sourc*****
2008年 10月 23日 (木) 00:54:05 JST
Revision: 2020 http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=jiemamy&view=rev&rev=2020 Author: daisuke_m Date: 2008-10-23 00:54:05 +0900 (Thu, 23 Oct 2008) Log Message: ----------- unique制約モデルがちょっと変だったので修正。 Modified Paths: -------------- artemis/trunk/org.jiemamy.core/src/main/resources/jiemamy-core.dicon Added Paths: ----------- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModelImpl.java zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/spec/model/constraint/UniqueConstraintModel.java Removed Paths: ------------- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModel.java artemis/trunk/org.jiemamy.core/src/test/java/org/jiemamy/core/model/ApplicationModelCreator.java -------------- next part -------------- Deleted: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModel.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModel.java 2008-10-22 15:28:49 UTC (rev 2019) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModel.java 2008-10-22 15:54:05 UTC (rev 2020) @@ -1,43 +0,0 @@ -/* - * Copyright 2007-2008 MIYAMOTO Daisuke, jiemamy.org and the Others. - * Created on 2008/06/09 - * - * This file is part of Jiemamy-core. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, - * either express or implied. See the License for the specific language - * governing permissions and limitations under the License. - */ -package org.jiemamy.core.model.constraint; - -/** - * UNIQUE制約モデル。 - * @author daisuke - */ - @ SuppressWarnings("serial") -public class UniqueConstraintModel extends AbstractConstraintModel { - - /** - * コンストラクタ。 - * @category instance creation - */ - public UniqueConstraintModel() { - } - - /** - * コンストラクタ。 - * @param name 制約名 - * @category instance creation - */ - public UniqueConstraintModel(String name) { - super(name); - } -} Copied: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModelImpl.java (from rev 2017, artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModel.java) =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModelImpl.java (rev 0) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModelImpl.java 2008-10-22 15:54:05 UTC (rev 2020) @@ -0,0 +1,53 @@ +/* + * Copyright 2007-2008 MIYAMOTO Daisuke, jiemamy.org and the Others. + * Created on 2008/06/09 + * + * This file is part of Jiemamy-core. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + */ +package org.jiemamy.core.model.constraint; + +import org.jiemamy.spec.model.constraint.UniqueConstraintModel; + +/** + * UNIQUE制約モデル。 + * @author daisuke + */ + @ SuppressWarnings("serial") +public class UniqueConstraintModelImpl extends AbstractConstraintModel implements UniqueConstraintModel { + + /** + * コンストラクタ。 + * @category instance creation + */ + public UniqueConstraintModelImpl() { + } + + /** + * コンストラクタ。 + * @param name 制約名 + * @category instance creation + */ + public UniqueConstraintModelImpl(String name) { + super(name); + } + + /** + * {@inheritDoc} + */ + public UniqueConstraintModel init() { + initialize(); + return this; + } +} Property changes on: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/core/model/constraint/UniqueConstraintModelImpl.java ___________________________________________________________________ Name: svn:mime-type + text/plain Modified: artemis/trunk/org.jiemamy.core/src/main/resources/jiemamy-core.dicon =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/resources/jiemamy-core.dicon 2008-10-22 15:28:49 UTC (rev 2019) +++ artemis/trunk/org.jiemamy.core/src/main/resources/jiemamy-core.dicon 2008-10-22 15:54:05 UTC (rev 2020) @@ -27,7 +27,7 @@ <component class="org.jiemamy.core.model.constraint.NotNullConstraintModelImpl" instance="prototype" /> <component class="org.jiemamy.core.model.constraint.CheckConstraintModelImpl" instance="prototype" /> <component class="org.jiemamy.core.model.constraint.PrimaryKeyConstraintModelImpl" instance="prototype" /> - <component class="org.jiemamy.core.model.constraint.UniqueConstraintModel" instance="prototype" /> + <component class="org.jiemamy.core.model.constraint.UniqueConstraintModelImpl" instance="prototype" /> <component class="org.jiemamy.core.model.index.IndexModelImpl" instance="prototype" /> <component class="org.jiemamy.core.model.index.IndexColumnModelImpl" instance="prototype" autoBinding="none"/> Deleted: artemis/trunk/org.jiemamy.core/src/test/java/org/jiemamy/core/model/ApplicationModelCreator.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/test/java/org/jiemamy/core/model/ApplicationModelCreator.java 2008-10-22 15:28:49 UTC (rev 2019) +++ artemis/trunk/org.jiemamy.core/src/test/java/org/jiemamy/core/model/ApplicationModelCreator.java 2008-10-22 15:54:05 UTC (rev 2020) @@ -1,520 +0,0 @@ -///* -// * Copyright 2007-2008 MIYAMOTO Daisuke, jiemamy.org and the Others. -// * Created on 2008/06/22 -// * -// * This file is part of Jiemamy-core. -// * -// * Licensed under the Apache License, Version 2.0 (the "License"); -// * you may not use this file except in compliance with the License. -// * You may obtain a copy of the License at -// * -// * http://www.apache.org/licenses/LICENSE-2.0 -// * -// * Unless required by applicable law or agreed to in writing, software -// * distributed under the License is distributed on an "AS IS" BASIS, -// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, -// * either express or implied. See the License for the specific language -// * governing permissions and limitations under the License. -// */ -//package org.jiemamy.core.model; -// -//import java.util.ArrayList; -//import java.util.List; -// -//import org.seasar.framework.container.factory.SingletonS2ContainerFactory; -// -//import org.jiemamy.core.model.constraint.NotNullConstraintModelImpl; -//import org.jiemamy.core.model.constraint.PrimaryKeyConstraintModelImpl; -//import org.jiemamy.core.model.constraint.UniqueConstraintModel; -//import org.jiemamy.core.model.dataset.RecordModelImpl; -//import org.jiemamy.core.model.typedef.datatype.impl.IntegerDataTypeMock; -//import org.jiemamy.core.model.typedef.datatype.impl.NumericDataTypeMock; -//import org.jiemamy.core.model.typedef.datatype.impl.TimestampDataTypeMock; -//import org.jiemamy.core.model.typedef.datatype.impl.VarcharDataTypeMock; -//import org.jiemamy.core.utils.processor.entity.table.CreateNewColumnProcessor; -//import org.jiemamy.core.utils.processor.entity.table.GetColumnProcessor; -//import org.jiemamy.core.utils.processor.root.SetRecordProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewDomainProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewForeignKeyProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewInsertDataSetProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewPresentationProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewStickyProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewTableProcessor; -//import org.jiemamy.core.utils.processor.root.creation.CreateNewViewProcessor; -//import org.jiemamy.spec.exception.JiemamyRuntimeException; -//import org.jiemamy.spec.exception.TooManyElementsException; -//import org.jiemamy.spec.geometory.JmPoint; -//import org.jiemamy.spec.geometory.JmRectangle; -//import org.jiemamy.spec.model.ColumnModel; -//import org.jiemamy.spec.model.DomainModel; -//import org.jiemamy.spec.model.RootModel; -//import org.jiemamy.spec.model.connection.ForeignKeyModel; -//import org.jiemamy.spec.model.connection.ForeignKeyModel.InitiallyCheckTime; -//import org.jiemamy.spec.model.connection.ForeignKeyModel.ReferentialAction; -//import org.jiemamy.spec.model.dataset.InsertDataSetModel; -//import org.jiemamy.spec.model.dataset.RecordModel; -//import org.jiemamy.spec.model.node.StickyModel; -//import org.jiemamy.spec.model.node.TableModel; -//import org.jiemamy.spec.model.node.ViewModel; -//import org.jiemamy.spec.model.presentation.DiagramPresentationModel; -// -///** -// * アプリケーション用のモデルを生成するクラス。 -// * -// * @author j5ik2o -// */ -//public class ApplicationModelCreator { -// -// public static void main(String[] args) { -// SingletonS2ContainerFactory.setConfigPath("jiemamy-core.dicon"); -// SingletonS2ContainerFactory.init(); -// RootModel rootModel = new ApplicationModelCreator().createModel(); -// System.out.println(rootModel); -// } -// -// /** -// * テスト用モデルを生成する。 -// * @return モデル -// */ -// public RootModel createModel() { -// int offset = 50; -// -// RootModel rootModel = new RootModelImpl(); -// rootModel.setDialectClassName("org.jiemamy.dialect.mysql.MySqlDialect"); // MySQLDialect.class.getName() -// rootModel.setBeginScript("BEGIN;"); -// rootModel.setEndScript("COMMIT;"); -// rootModel.setDescription("シリアライゼーションイメージ"); -// rootModel.setSchemaName("FOO"); -// -// DomainModel idDomain = rootModel.process(new CreateNewDomainProcessor("ID", new IntegerDataTypeMock())); -// idDomain.addConstraint(new NotNullConstraintModelImpl()); -// idDomain.addConstraint(new UniqueConstraintModel("UNIQUE_CONSTTRAINT_ID")); -// // TODO AUTO_INCREMENTの追加 [CORE-21] -// -// DomainModel nameDomain = rootModel.process(new CreateNewDomainProcessor("NAME", new VarcharDataTypeMock(32))); -// nameDomain.setDescription("人名用の型です。"); -// -// // ノードの生成 -// TableModel deptTable = createDeptTable(rootModel, idDomain, nameDomain); -// TableModel empTable = createEmpTable(rootModel, idDomain, nameDomain); -// -// ViewModel highSalView = -// rootModel -// .process(new CreateNewViewProcessor("V_HIGH_SAL_EMP", "SELECT * FROM T_EMP WHERE SAL > 2000;")); -// highSalView.setLogicalName("高給取り"); -// -// StickyModel sticky = rootModel.process(new CreateNewStickyProcessor()); -// sticky.setContents("メモーー"); -// rootModel.getNodes().add(sticky); -// -// // コネクションの生成・追加 -// ForeignKeyModel fkEmpEmp = createForeignKey(rootModel, empTable, empTable, "MGR_ID"); -// fkEmpEmp.setOnDelete(ReferentialAction.SET_NULL); -// fkEmpEmp.setDeferrable(true); -// fkEmpEmp.setInitiallyCheckTime(InitiallyCheckTime.DEFERRED); -// rootModel.getConnections().add(fkEmpEmp); -// -// ForeignKeyModel fkEmpDept = createForeignKey(rootModel, deptTable, empTable, "DEPT_ID"); -// rootModel.getConnections().add(fkEmpDept); -// -// // ダイアグラム表現の生成・追加(1) -// DiagramPresentationModel presentation = rootModel.process(new CreateNewPresentationProcessor("全部表示する")); -// presentation.setName("全部表示する"); -// presentation.getNodeLayouts().put(empTable, new JmRectangle(360, 60)); -// presentation.getNodeLayouts().put(deptTable, new JmRectangle(60, 60)); -// presentation.getNodeLayouts().put(highSalView, new JmRectangle(60, 270)); -// presentation.getNodeLayouts().put(sticky, new JmRectangle(360, 270)); -// -// List<JmPoint> bendpoints = new ArrayList<JmPoint>(); -// JmRectangle rect = presentation.getNodeLayouts().get(empTable); -// bendpoints.add(0, new JmPoint(Math.max(rect.x - offset, 0), rect.y)); -// 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.getDiagramPresentations().add(presentation); -// -// // ダイアグラム表現の生成・追加(2) -// presentation = rootModel.process(new CreateNewPresentationProcessor("一部表示する")); -// presentation.getNodeLayouts().put(empTable, new JmRectangle(60, 60)); -// presentation.getNodeLayouts().put(highSalView, new JmRectangle(270, 270)); -// presentation.getConnectionLayouts().put(fkEmpDept, new ArrayList<JmPoint>()); // bendpount無し -// -// // データセットの生成・追加(1) -// InsertDataSetModel dataSet = rootModel.process(new CreateNewInsertDataSetProcessor("データ群en")); -// dataSet.getRecords().put(deptTable, createDeptDataSetEn(deptTable)); -// dataSet.getRecords().put(empTable, createEmpDataSetEn(empTable)); -// -// // データセットの生成・追加(2) -// dataSet = rootModel.process(new CreateNewInsertDataSetProcessor("データ群ja")); -// dataSet.getRecords().put(deptTable, createDeptDataSetJa(deptTable)); -// dataSet.getRecords().put(empTable, createEmpDataSetJa(empTable)); -// -// return rootModel; -// } -// -// private List<RecordModel> createDeptDataSetEn(TableModel deptTable) { -// List<RecordModel> result = new ArrayList<RecordModel>(); -// -// try { -// RecordModel record = new RecordModelImpl(); -// -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "1")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "10")); -// record -// .process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "ACCOUNTING")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "NEW YORK")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "2")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "20")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "RESEARCH")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "DALLAS")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "3")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "30")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "SALES")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "CHICAGO")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "4")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "40")); -// record -// .process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "OPERATIONS")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "BOSTON")); -// result.add(record); -// } catch (TooManyElementsException e) { -// throw new JiemamyRuntimeException("test code error", e); -// } -// -// return result; -// } -// -// private List<RecordModel> createDeptDataSetJa(TableModel deptTable) { -// List<RecordModel> result = new ArrayList<RecordModel>(); -// -// try { -// RecordModel record = new RecordModelImpl(); -// -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "1")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "10")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "経理部")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "広島")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "2")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "20")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "研究開発部")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "京都")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "3")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "30")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "営業部")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("LOC")), "東京")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("ID")), "4")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NO")), "40")); -// record.process(new SetRecordProcessor(deptTable.process(new GetColumnProcessor("DEPT_NAME")), "経営本部")); -// // locは指定せず、特定しない状態 -// result.add(record); -// } catch (TooManyElementsException e) { -// throw new JiemamyRuntimeException("test code error", e); -// } -// -// return result; -// } -// -// /** -// * DEPTテーブルの生成。 -// * @param rootModel -// * @param idDomain IDの型として使用するドメイン -// * @param nameDomain 名称として使用するドメイン -// * @return DEPTテーブル -// */ -// private TableModel createDeptTable(RootModel rootModel, DomainModel idDomain, DomainModel nameDomain) { -// TableModel deptTable = rootModel.process(new CreateNewTableProcessor("T_DEPT")); -// -// deptTable.setBeginScript("/* test begin script */"); -// deptTable.setDescription("部署マスタです。"); -// -// ColumnModel idColumn = deptTable.process(new CreateNewColumnProcessor("ID", idDomain)); -// idColumn.addConstraint(new PrimaryKeyConstraintModelImpl()); -// idColumn.setLogicalName("部署ID"); -// -// ColumnModel noColumn = deptTable.process(new CreateNewColumnProcessor("DEPT_NO", new IntegerDataTypeMock())); -// noColumn.setLogicalName("部署番号"); -// -// ColumnModel deptNameColumn = -// deptTable.process(new CreateNewColumnProcessor("DEPT_NAME", new VarcharDataTypeMock(20))); -// deptNameColumn.setLogicalName("部署名"); -// deptNameColumn.setRepresentation(true); -// -// ColumnModel locColumn = deptTable.process(new CreateNewColumnProcessor("LOC", new VarcharDataTypeMock(20))); -// locColumn.setLogicalName("ロケーション"); -// locColumn.setDefaultValue("secret"); -// -// return deptTable; -// } -// -// private List<RecordModel> createEmpDataSetEn(TableModel empTable) { -// List<RecordModel> result = new ArrayList<RecordModel>(); -// -// try { -// RecordModel record = new RecordModelImpl(); -// -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "1")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "10")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "SMITH")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2003-02-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "40")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "3")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "2")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "20")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "ALLEN")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2000-03-04")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "50")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "4")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "WARD")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), null)); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "1993-12-05")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "60")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "4")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "4")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "40")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "JONES")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "2")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2007-04-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "36")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "2")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "5")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "50")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "MARTIN")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "1")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2002-05-30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "3")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "6")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "60")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "BLAKE")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2007-04-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "25")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "2")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "7")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "70")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "CLARK")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "1")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2004-09-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "1")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "8")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "80")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "SCOTT")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "4")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2008-03-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "25")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "2")); -// result.add(record); -// } catch (TooManyElementsException e) { -// throw new JiemamyRuntimeException("test code error", e); -// } -// -// return result; -// } -// -// private List<RecordModel> createEmpDataSetJa(TableModel empTable) { -// List<RecordModel> result = new ArrayList<RecordModel>(); -// -// try { -// RecordModel record = new RecordModelImpl(); -// -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "1")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "10")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "山本")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2003-02-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "40")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "3")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "2")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "20")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "内海")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2000-03-04")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "50")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "4")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "村瀬")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), null)); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "1993-12-05")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "60")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "4")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "4")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "40")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "近藤")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "2")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2007-04-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "36")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "2")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "5")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "50")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "小峰")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "1")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2002-05-30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "3")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "6")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "60")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "三浦")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "3")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2007-04-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "25")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "2")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "7")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "70")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "前島")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "1")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2004-09-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "30")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "1")); -// result.add(record); -// -// record = new RecordModelImpl(); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("ID")), "8")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NO")), "80")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("EMP_NAME")), "島崎")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("MGR_ID")), "4")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("HIREDATE")), "2008-03-01")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("SAL")), "25")); -// record.process(new SetRecordProcessor(empTable.process(new GetColumnProcessor("DEPT_ID")), "2")); -// result.add(record); -// } catch (TooManyElementsException e) { -// throw new JiemamyRuntimeException("test code error", e); -// } -// -// return result; -// } -// -// /** -// * EMPテーブルの生成 -// * @param rootModel -// * @param idDomain IDの型として使用するドメイン -// * @param nameDomain 名称として使用するドメイン -// * @return EMPテーブル -// */ -// private TableModel createEmpTable(RootModel rootModel, DomainModel idDomain, DomainModel nameDomain) { -// TableModel empTable = rootModel.process(new CreateNewTableProcessor("T_EMP")); -// empTable.setLogicalName("従業員"); -// -// empTable.setBeginScript("/* test end script */"); -// empTable.setDescription("従業員マスタです。"); -// -// ColumnModel idColumn = empTable.process(new CreateNewColumnProcessor("ID", idDomain)); -// idColumn.addConstraint(new PrimaryKeyConstraintModelImpl()); -// idColumn.setLogicalName("従業員ID"); -// -// ColumnModel noColumn = empTable.process(new CreateNewColumnProcessor("EMP_NO", new IntegerDataTypeMock())); -// noColumn.addConstraint(new NotNullConstraintModelImpl()); -// idColumn.setLogicalName("従業員番号"); -// -// ColumnModel nameColumn = empTable.process(new CreateNewColumnProcessor("EMP_NAME", nameDomain)); -// nameColumn.addConstraint(new NotNullConstraintModelImpl()); -// idColumn.setLogicalName("従業員名"); -// nameColumn.setDefaultValue("no name"); -// nameColumn.setSimpleIndex(true); -// nameColumn.setRepresentation(true); -// -// empTable.process(new CreateNewColumnProcessor("MGR_ID", new IntegerDataTypeMock())); -// -// ColumnModel hireColumn = -// empTable.process(new CreateNewColumnProcessor("HIREDATE", new TimestampDataTypeMock())); -// hireColumn.addConstraint(new NotNullConstraintModelImpl()); -// -// ColumnModel salColumn = empTable.process(new CreateNewColumnProcessor("SAL", new NumericDataTypeMock(7, 2))); -// salColumn.addConstraint(new NotNullConstraintModelImpl()); -// -// ColumnModel deptColumn = empTable.process(new CreateNewColumnProcessor("DEPT_ID", new IntegerDataTypeMock())); -// deptColumn.addConstraint(new NotNullConstraintModelImpl()); -// -// return empTable; -// } -// -// /** -// * 外部キーを生成する。 -// * このメソッドは、複合キーテーブルを参照する外部キーは生成できない。 -// * @param rootModel -// * @param target 参照先テーブル -// * @param source 制約を受けるテーブル -// * @param sourceColumnName 制約を受けるカラムのカラム名 -// * @return 外部キー -// */ -// private ForeignKeyModel createForeignKey(RootModel rootModel, TableModel target, TableModel source, -// String sourceColumnName) { -// String[] sourceColumnNames = new String[] { -// sourceColumnName -// }; -// -// ForeignKeyModel fk = rootModel.process(new CreateNewForeignKeyProcessor(source, target, false)); -// for (int i = 0; i < sourceColumnNames.length; i++) { -// try { -// ColumnModel constraintColumn = source.process(new GetColumnProcessor(sourceColumnNames[i])); -// fk.getMappings().get(i).setConstraintColumn(constraintColumn); -// } catch (TooManyElementsException e) { -// throw new JiemamyRuntimeException("test code error", e); -// } -// } -// -// return fk; -// } -//} Added: zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/spec/model/constraint/UniqueConstraintModel.java =================================================================== --- zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/spec/model/constraint/UniqueConstraintModel.java (rev 0) +++ zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/spec/model/constraint/UniqueConstraintModel.java 2008-10-22 15:54:05 UTC (rev 2020) @@ -0,0 +1,32 @@ +/* + * Copyright 2007-2008 MIYAMOTO Daisuke, jiemamy.org and the Others. + * Created on 2008/09/18 + * + * This file is part of Jiemamy. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + */ +package org.jiemamy.spec.model.constraint; + +/** + * UNIQUE制約を表すモデルインターフェイス。 + * @author daisuke + */ +public interface UniqueConstraintModel extends Constraint { + + /** + * モデルの初期化を行う。 + * @return 自モデル + */ + UniqueConstraintModel init(); +} Property changes on: zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/spec/model/constraint/UniqueConstraintModel.java ___________________________________________________________________ Name: svn:mime-type + text/plain