[Jiemamy-notify:2323] commit [3341] depったメソッドの使用を一部回避。

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2009年 4月 30日 (木) 21:03:35 JST


Revision: 3341
          http://svn.sourceforge.jp/view?root=jiemamy&view=rev&rev=3341
Author:   daisuke_m
Date:     2009-04-30 21:03:35 +0900 (Thu, 30 Apr 2009)

Log Message:
-----------
depったメソッドの使用を一部回避。

Modified Paths:
--------------
    artemis/trunk/jiemamy-artemis-test/src/test/java/org/jiemamy/internal/serializer/SerializationTest.java
    artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/composer/exporter/SqlExporter.java
    artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultDataTypeResolver.java
    artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultForeignKeyImportVisitor.java
    artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultSqlEmitter.java
    artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/JiemamyFacadeImpl.java
    artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/model/entity/TableModelImpl.java
    artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/dialect/DefaultSqlEmitterTest.java
    artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/internal/JiemamyFacadeImplTest.java
    artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/utils/model/RootModelUtilTest.java
    artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/JiemamyViewFacadeImpl.java
    artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/connection/ConnectionAdapterImpl.java
    artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/node/NodeAdapterImpl.java
    artemis/trunk/jiemamy-view/src/test/java/org/jiemamy/internal/JiemamyViewFacadeImplTest.java
    zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/Jiemamy.java
    zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/JiemamyImplementation.java
    zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/model/entity/TableModel.java


-------------- next part --------------
Modified: artemis/trunk/jiemamy-artemis-test/src/test/java/org/jiemamy/internal/serializer/SerializationTest.java
===================================================================
--- artemis/trunk/jiemamy-artemis-test/src/test/java/org/jiemamy/internal/serializer/SerializationTest.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-artemis-test/src/test/java/org/jiemamy/internal/serializer/SerializationTest.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -62,7 +62,6 @@
 import org.jiemamy.serializer.JiemamySerializer;
 import org.jiemamy.serializer.SerializationException;
 import org.jiemamy.utils.model.EqualsUtil;
-import org.jiemamy.utils.model.RootModelUtil;
 import org.jiemamy.validator.AllValidator;
 import org.jiemamy.validator.Problem;
 import org.jiemamy.validator.Validator;
@@ -158,7 +157,7 @@
 		assertThat(jxpath.getValue("domains[2]/logicalName"), is(nullValue()));
 		
 		logger.info("***Entities");
-		Collection<TableModel> tables = RootModelUtil.getEntities(rootModel, TableModel.class);
+		Collection<TableModel> tables = rootModel.getEntities(TableModel.class);
 		for (TableModel tableModel : tables) {
 			logger.info("  Table:" + tableModel.getId() + "," + tableModel.getName() + ","
 					+ tableModel.getLogicalName() + "," + tableModel.getDescription());
@@ -169,7 +168,7 @@
 		}
 		assertThat(tables.size(), is(2));
 		
-		Collection<ViewModel> views = RootModelUtil.getEntities(rootModel, ViewModel.class);
+		Collection<ViewModel> views = rootModel.getEntities(ViewModel.class);
 		for (ViewModel view : views) {
 			logger.info("  View:" + view);
 		}

Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/composer/exporter/SqlExporter.java
===================================================================
--- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/composer/exporter/SqlExporter.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/composer/exporter/SqlExporter.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -37,7 +37,6 @@
 import org.jiemamy.dialect.Dialect;
 import org.jiemamy.model.RootModel;
 import org.jiemamy.model.sql.SqlStatement;
-import org.jiemamy.utils.model.RootModelUtil;
 
 /**
  * モデルからSQLを構築するエクスポータ。
@@ -69,7 +68,7 @@
 		
 		Writer writer = null;
 		try {
-			Dialect dialect = RootModelUtil.getDialect(rootModel);
+			Dialect dialect = rootModel.findDialect();
 			
 			List<SqlStatement> statements = dialect.emitStatements(rootModel, config);
 			

Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultDataTypeResolver.java
===================================================================
--- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultDataTypeResolver.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultDataTypeResolver.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -40,7 +40,6 @@
 import org.jiemamy.model.datatype.adapter.TimezonedDataTypeAdapter;
 import org.jiemamy.model.sql.Token;
 import org.jiemamy.utils.CollectionsUtil;
-import org.jiemamy.utils.model.DataTypeUtil;
 
 /**
  * SQL方言において、{@link DataType}と型名(String)間の解決を行うクラス。
@@ -65,7 +64,7 @@
 	
 	public List<Token> resolveDataType(DataType dataType, ReferenceResolver resolver) {
 		List<Token> tokens = CollectionsUtil.newArrayList();
-		BuiltinDataType builtinDataType = DataTypeUtil.toBuiltinDataType(dataType, resolver);
+		BuiltinDataType builtinDataType = dataType.toBuiltinDataType(resolver);
 		
 		tokens.add(Keyword.of(moldManager.findDataTypeMold(builtinDataType).getName()));
 		if (isSupport(SizedDataTypeAdapter.class, builtinDataType.getCategory())

Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultForeignKeyImportVisitor.java
===================================================================
--- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultForeignKeyImportVisitor.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultForeignKeyImportVisitor.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -33,8 +33,6 @@
 import org.jiemamy.model.entity.TableModel;
 import org.jiemamy.utils.metadata.KeyMeta;
 import org.jiemamy.utils.model.ForeignKeyUtil;
-import org.jiemamy.utils.model.RootModelUtil;
-import org.jiemamy.utils.model.TableUtil;
 import org.jiemamy.utils.visitor.AbstractCollectionVisitor;
 
 /**
@@ -60,8 +58,8 @@
 	
 	public Void visit(KeyMeta keys) {
 		Validate.notNull(keys);
-		TableModel constrainedTable = RootModelUtil.getEntity(rootModel, TableModel.class, keys.fkTableName);
-		TableModel referenceTable = RootModelUtil.getEntity(rootModel, TableModel.class, keys.pkTableName);
+		TableModel constrainedTable = rootModel.getEntity(TableModel.class, keys.fkTableName);
+		TableModel referenceTable = rootModel.getEntity(TableModel.class, keys.pkTableName);
 		
 		if (constrainedTable != null && referenceTable != null) {
 			JiemamyFactory factory = rootModel.getJiemamy().getFactory();
@@ -72,8 +70,8 @@
 				constrainedTable.getAttributes().add(foreignKey);
 				importedForeignKeys.put(keys.fkName, foreignKey);
 			}
-			ColumnModel fkColumn = TableUtil.getColumn(constrainedTable, keys.fkColumnName);
-			ColumnModel pkColumn = TableUtil.getColumn(referenceTable, keys.pkColumnName);
+			ColumnModel fkColumn = constrainedTable.getColumn(keys.fkColumnName);
+			ColumnModel pkColumn = referenceTable.getColumn(keys.pkColumnName);
 			ForeignKeyUtil.addMapping(foreignKey, fkColumn, pkColumn);
 			
 			if (keys.updateRule != null) {

Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultSqlEmitter.java
===================================================================
--- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultSqlEmitter.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/impl/DefaultSqlEmitter.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -65,9 +65,6 @@
 import org.jiemamy.utils.CollectionsUtil;
 import org.jiemamy.utils.Disablable;
 import org.jiemamy.utils.EntityDependencyCalculator;
-import org.jiemamy.utils.model.DataTypeUtil;
-import org.jiemamy.utils.model.ForeignKeyUtil;
-import org.jiemamy.utils.model.TableUtil;
 
 /**
  * {@link SqlEmitter}の標準実装クラス。
@@ -332,14 +329,13 @@
 		columnList.add(Separator.LEFT_PAREN);
 		dataList.add(Separator.LEFT_PAREN);
 		
-		List<ColumnModel> columns = TableUtil.getColumns(tableModel);
+		List<ColumnModel> columns = tableModel.findColumns();
 		for (ColumnModel columnModel : columns) {
 			columnList.add(Identifier.of(columnModel.getName()));
 			columnList.add(Separator.COMMA);
 			
 			ReferenceResolver referenceResolver = columnModel.getJiemamy().getReferenceResolver();
-			BuiltinDataType builtinDataType =
-					DataTypeUtil.toBuiltinDataType(columnModel.getDataType(), referenceResolver);
+			BuiltinDataType builtinDataType = columnModel.getDataType().toBuiltinDataType(referenceResolver);
 			String string = recordModel.getValues().get(factory.newReference(columnModel));
 			dataList.add(Literal.of(string, builtinDataType.getCategory().getLiteralType()));
 			dataList.add(Separator.COMMA);
@@ -378,8 +374,7 @@
 				tokens.addAll(dataTypeResolver.resolveDataType(columnModel.getDataType(), referenceResolver));
 				
 				if (StringUtils.isEmpty(columnModel.getDefaultValue()) == false) {
-					BuiltinDataType builtinDataType =
-							DataTypeUtil.toBuiltinDataType(columnModel.getDataType(), referenceResolver);
+					BuiltinDataType builtinDataType = columnModel.getDataType().toBuiltinDataType(referenceResolver);
 					tokens.add(Keyword.DEFAULT);
 					tokens.add(Literal
 						.of(columnModel.getDefaultValue(), builtinDataType.getCategory().getLiteralType()));
@@ -479,7 +474,7 @@
 				tokens.add(Keyword.KEY);
 				addColumnList(tokens, foreignKey.getKeyColumns(), referenceResolver);
 				tokens.add(Keyword.REFERENCES);
-				EntityModel referenceEntity = ForeignKeyUtil.getReferenceEntity(foreignKey);
+				EntityModel referenceEntity = foreignKey.findReferencedEntity();
 				tokens.add(Identifier.of(referenceEntity.getName()));
 				addColumnList(tokens, foreignKey.getReferenceColumns(), referenceResolver);
 				

Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/JiemamyFacadeImpl.java
===================================================================
--- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/JiemamyFacadeImpl.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/JiemamyFacadeImpl.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -83,8 +83,6 @@
 import org.jiemamy.utils.EssentialStacks;
 import org.jiemamy.utils.model.AttributeUtil;
 import org.jiemamy.utils.model.EntityUtil;
-import org.jiemamy.utils.model.ForeignKeyUtil;
-import org.jiemamy.utils.model.RootModelUtil;
 import org.jiemamy.utils.model.TableUtil;
 
 /**
@@ -302,14 +300,14 @@
 		// ローカルキーを削除する場合、そのキーを参照する外部キーも同時に削除する
 		if (attributeModel instanceof LocalKeyConstraint) {
 			LocalKeyConstraint localKeyConstraint = (LocalKeyConstraint) attributeModel;
-			TableModel definedTable = AttributeUtil.getDefinedTable(localKeyConstraint);
-			Collection<EntityModel> dependentEntities = EntityUtil.getDependentEntities(definedTable, false);
+			TableModel definedTable = localKeyConstraint.findDeclaringTable();
+			Collection<EntityModel> dependentEntities = definedTable.findSubEntities(false);
 			for (EntityModel entityModel : dependentEntities) {
 				if (entityModel instanceof TableModel) {
 					TableModel dependentTable = (TableModel) entityModel;
-					List<ForeignKey> foreignKeys = TableUtil.getAttributes(dependentTable, ForeignKey.class);
+					List<ForeignKey> foreignKeys = dependentTable.getAttributes(ForeignKey.class);
 					for (ForeignKey foreignKey : foreignKeys) {
-						if (ForeignKeyUtil.getReferenceKeyConstraint(foreignKey) == null) {
+						if (foreignKey.findReferencedKeyConstraint() == null) {
 							removeAttribute(dependentTable, foreignKey);
 						}
 					}
@@ -320,7 +318,7 @@
 		// カラムを削除する場合、全てのキーに含まれる該当カラムへの参照も同時に削除する
 		if (attributeModel instanceof ColumnModel) {
 			ColumnModel columnModel = (ColumnModel) attributeModel;
-			List<KeyConstraint> keys = TableUtil.getAttributes(tableModel, KeyConstraint.class, true);
+			List<KeyConstraint> keys = tableModel.getAttributes(KeyConstraint.class, true);
 			for (KeyConstraint keyConstraint : keys) {
 				removeKeyColumn(keyConstraint, columnModel);
 			}
@@ -355,14 +353,14 @@
 		DomainRef domainRef = factory.newReference(domainModel);
 		Dialect dialect;
 		try {
-			dialect = RootModelUtil.getDialect(rootModel);
+			dialect = rootModel.findDialect();
 		} catch (ClassNotFoundException e) {
 			logger.warn("Dialectのロスト", e);
 			dialect = new GenericDialect();
 		}
-		Collection<TableModel> tableModels = RootModelUtil.getEntities(rootModel, TableModel.class);
+		Collection<TableModel> tableModels = rootModel.getEntities(TableModel.class);
 		for (TableModel tableModel : tableModels) {
-			List<ColumnModel> columns = TableUtil.getColumns(tableModel);
+			List<ColumnModel> columns = tableModel.findColumns();
 			for (ColumnModel columnModel : columns) {
 				if (columnModel.getDataType().equals(domainRef)) {
 					BuiltinDataType domainDataType = domainModel.getDataType();
@@ -410,7 +408,7 @@
 					TableModel sourceTable = (TableModel) sourceEntity;
 					List<ForeignKey> foreignKeys = TableUtil.getForeignKeys(sourceTable);
 					for (ForeignKey foreignKey : foreignKeys) {
-						if (ForeignKeyUtil.getReferenceEntity(foreignKey) == tableModel) {
+						if (foreignKey.findReferencedEntity() == tableModel) {
 							removeAttribute(sourceTable, foreignKey);
 						}
 					}

Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/model/entity/TableModelImpl.java
===================================================================
--- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/model/entity/TableModelImpl.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/internal/model/entity/TableModelImpl.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -57,6 +57,20 @@
 		super(jiemamy, id);
 	}
 	
+	public List<ColumnModel> findColumns() {
+		// TODO インライン展開
+		return TableUtil.getColumns(this);
+	}
+	
+	public List<ForeignKey> findForeignKeys() {
+		return getAttributes(ForeignKey.class);
+	}
+	
+	public PrimaryKey findPrimaryKey() {
+		// TODO インライン展開
+		return TableUtil.getPrimaryKey(this);
+	}
+	
 	public <T extends AttributeModel>T getAttribute(Class<T> clazz) {
 		// TODO インライン展開
 		return TableUtil.getAttribute(this, clazz);
@@ -77,30 +91,21 @@
 		return TableUtil.getAttributes(this, clazz);
 	}
 	
-	public ColumnModel getColumn(String columnName) {
+	public <T extends AttributeModel>List<T> getAttributes(Class<T> clazz, boolean columnAttr) {
 		// TODO インライン展開
-		return TableUtil.getColumn(this, columnName);
+		return TableUtil.getAttributes(this, clazz, columnAttr);
 	}
 	
-	public List<ColumnModel> findColumns() {
+	public ColumnModel getColumn(String columnName) {
 		// TODO インライン展開
-		return TableUtil.getColumns(this);
+		return TableUtil.getColumn(this, columnName);
 	}
 	
-	public List<ForeignKey> findForeignKeys() {
-		return getAttributes(ForeignKey.class);
-	}
-	
 	public List<IndexModel> getIndexes() {
 		assert indexes != null;
 		return indexes;
 	}
 	
-	public PrimaryKey findPrimaryKey() {
-		// TODO インライン展開
-		return TableUtil.getPrimaryKey(this);
-	}
-	
 	/**
 	 * 属性のリストを設定する。
 	 * 

Modified: artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/dialect/DefaultSqlEmitterTest.java
===================================================================
--- artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/dialect/DefaultSqlEmitterTest.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/dialect/DefaultSqlEmitterTest.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -30,7 +30,6 @@
 import org.jiemamy.internal.test.TestModelBuilders;
 import org.jiemamy.internal.test.TestModelsTestBase;
 import org.jiemamy.model.sql.SqlStatement;
-import org.jiemamy.utils.model.RootModelUtil;
 
 /**
  * {@link DefaultSqlEmitter}のテストクラス。
@@ -50,7 +49,7 @@
 	@Override
 	public void doTest(TestModelBuilders entry) throws Exception {
 		Jiemamy jiemamy = entry.getBuiltModel();
-		Dialect dialect = RootModelUtil.getDialect(jiemamy.getFactory().getRootModel());
+		Dialect dialect = jiemamy.getFactory().getRootModel().findDialect();
 		SqlEmitter sqlEmitter = new DefaultSqlEmitter(new DefaultDataTypeResolver(dialect.getMoldManager()));
 		
 		List<SqlStatement> statements = sqlEmitter.emit(jiemamy.getFactory().getRootModel(), new MockEmitConfig());

Modified: artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/internal/JiemamyFacadeImplTest.java
===================================================================
--- artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/internal/JiemamyFacadeImplTest.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/internal/JiemamyFacadeImplTest.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -43,7 +43,6 @@
 import org.jiemamy.model.attribute.ColumnRef;
 import org.jiemamy.model.attribute.constraint.PrimaryKey;
 import org.jiemamy.model.entity.TableModel;
-import org.jiemamy.utils.model.TableUtil;
 
 /**
  * {@link JiemamyFacadeImpl}のテストクラス。
@@ -94,32 +93,32 @@
 		ColumnModel columnModel1 = factory.newModel(ColumnModel.class);
 		ColumnModel columnModel2 = factory.newModel(ColumnModel.class);
 		ColumnModel columnModel3 = factory.newModel(ColumnModel.class);
-		assertThat(TableUtil.getColumns(tableModel).size(), is(0));
+		assertThat(tableModel.findColumns().size(), is(0));
 		
 		SavePoint save2 = coreFacade.save();
 		coreFacade.addAttribute(tableModel, columnModel1);
-		assertThat(TableUtil.getColumns(tableModel).size(), is(1));
-		assertThat(TableUtil.getColumns(tableModel).get(0), is(columnModel1));
+		assertThat(tableModel.findColumns().size(), is(1));
+		assertThat(tableModel.findColumns().get(0), is(columnModel1));
 		
 		SavePoint save3 = coreFacade.save();
 		coreFacade.addAttribute(tableModel, columnModel2);
-		assertThat(TableUtil.getColumns(tableModel).size(), is(2));
-		assertThat(TableUtil.getColumns(tableModel).get(0), is(columnModel1));
-		assertThat(TableUtil.getColumns(tableModel).get(1), is(columnModel2));
+		assertThat(tableModel.findColumns().size(), is(2));
+		assertThat(tableModel.findColumns().get(0), is(columnModel1));
+		assertThat(tableModel.findColumns().get(1), is(columnModel2));
 		
 		coreFacade.rollback(save3);
-		assertThat(TableUtil.getColumns(tableModel).size(), is(1));
-		assertThat(TableUtil.getColumns(tableModel).get(0), is(columnModel1));
+		assertThat(tableModel.findColumns().size(), is(1));
+		assertThat(tableModel.findColumns().get(0), is(columnModel1));
 		
 		coreFacade.addAttribute(tableModel, columnModel2);
 		coreFacade.addAttribute(tableModel, columnModel3);
-		assertThat(TableUtil.getColumns(tableModel).size(), is(3));
-		assertThat(TableUtil.getColumns(tableModel).get(0), is(columnModel1));
-		assertThat(TableUtil.getColumns(tableModel).get(1), is(columnModel2));
-		assertThat(TableUtil.getColumns(tableModel).get(2), is(columnModel3));
+		assertThat(tableModel.findColumns().size(), is(3));
+		assertThat(tableModel.findColumns().get(0), is(columnModel1));
+		assertThat(tableModel.findColumns().get(1), is(columnModel2));
+		assertThat(tableModel.findColumns().get(2), is(columnModel3));
 		
 		coreFacade.rollback(save2);
-		assertThat(TableUtil.getColumns(tableModel).size(), is(0));
+		assertThat(tableModel.findColumns().size(), is(0));
 		assertThat(factory.getRootModel().getEntities().size(), is(1));
 		coreFacade.rollback(save1);
 		assertThat(factory.getRootModel().getEntities().isEmpty(), is(true));

Modified: artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/utils/model/RootModelUtilTest.java
===================================================================
--- artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/utils/model/RootModelUtilTest.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/utils/model/RootModelUtilTest.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -33,8 +33,8 @@
 import org.jiemamy.dialect.generic.GenericDialect;
 import org.jiemamy.internal.builder.TableBuilderImpl;
 import org.jiemamy.internal.builder.ViewBuilderImpl;
+import org.jiemamy.internal.test.CoreTestModelBuilder;
 import org.jiemamy.internal.test.ReflectionDialectProvider;
-import org.jiemamy.internal.test.CoreTestModelBuilder;
 import org.jiemamy.model.RootModel;
 import org.jiemamy.model.entity.TableModel;
 import org.jiemamy.model.entity.ViewModel;
@@ -99,8 +99,8 @@
 		rootModel.getEntities().add(new ViewBuilderImpl(factory, "view1").build());
 		rootModel.getEntities().add(new ViewBuilderImpl(factory, "view2").build());
 		
-		assertThat(RootModelUtil.getEntities(rootModel, TableModel.class).size(), is(3));
-		assertThat(RootModelUtil.getEntities(rootModel, ViewModel.class).size(), is(2));
+		assertThat(rootModel.getEntities(TableModel.class).size(), is(3));
+		assertThat(rootModel.getEntities(ViewModel.class).size(), is(2));
 	}
 	
 	/**

Modified: artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/JiemamyViewFacadeImpl.java
===================================================================
--- artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/JiemamyViewFacadeImpl.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/JiemamyViewFacadeImpl.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -169,7 +169,7 @@
 			
 			LocalKeyConstraint key = TableUtil.getKey(targetTable);
 			
-			List<ColumnModel> sourceColumns = TableUtil.getColumns(sourceTable);
+			List<ColumnModel> sourceColumns = sourceTable.findColumns();
 			
 			for (ColumnRef columnRef : key.getKeyColumns()) {
 				ColumnModel keyColumn = sourceColumns.get(0);

Modified: artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/connection/ConnectionAdapterImpl.java
===================================================================
--- artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/connection/ConnectionAdapterImpl.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/connection/ConnectionAdapterImpl.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -29,7 +29,6 @@
 import org.jiemamy.model.connection.ConnectionAdapter;
 import org.jiemamy.model.entity.TableModel;
 import org.jiemamy.model.node.NodeAdapter;
-import org.jiemamy.utils.model.AttributeUtil;
 
 /**
  * コネクション(FKと継承等)の抽象クラス。
@@ -59,7 +58,7 @@
 		}
 		ColumnRef columnRef = keyColumns.get(0);
 		ColumnModel columnModel = columnRef.getJiemamy().getReferenceResolver().resolve(columnRef);
-		TableModel definedTable = AttributeUtil.getDefinedTable(columnModel);
+		TableModel definedTable = columnModel.findDeclaringTable();
 		if (definedTable == null) {
 			return null;
 		}
@@ -73,7 +72,7 @@
 		}
 		ColumnRef columnRef = referenceColumns.get(0);
 		ColumnModel columnModel = columnRef.getJiemamy().getReferenceResolver().resolve(columnRef);
-		TableModel definedTable = AttributeUtil.getDefinedTable(columnModel);
+		TableModel definedTable = columnModel.findDeclaringTable();
 		if (definedTable == null) {
 			return null;
 		}

Modified: artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/node/NodeAdapterImpl.java
===================================================================
--- artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/node/NodeAdapterImpl.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-view/src/main/java/org/jiemamy/internal/model/node/NodeAdapterImpl.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -30,8 +30,6 @@
 import org.jiemamy.model.entity.TableModel;
 import org.jiemamy.model.node.NodeAdapter;
 import org.jiemamy.utils.CollectionsUtil;
-import org.jiemamy.utils.model.EntityUtil;
-import org.jiemamy.utils.model.ForeignKeyUtil;
 import org.jiemamy.utils.model.TableUtil;
 
 /**
@@ -87,13 +85,13 @@
 		List<ConnectionAdapter> result = CollectionsUtil.newArrayList();
 		if (coreEntityModel instanceof TableModel) {
 			TableModel targetTable = (TableModel) coreEntityModel;
-			Collection<EntityModel> sourceEntities = EntityUtil.getDependentEntities(targetTable, false);
+			Collection<EntityModel> sourceEntities = targetTable.findSubEntities(false);
 			for (EntityModel sourceEntity : sourceEntities) {
 				if (sourceEntity instanceof TableModel) {
 					TableModel sourceTable = (TableModel) sourceEntity;
 					List<ForeignKey> foreignKeys = TableUtil.getForeignKeys(sourceTable);
 					for (ForeignKey foreignKey : foreignKeys) {
-						if (ForeignKeyUtil.getReferenceEntity(foreignKey) == targetTable) {
+						if (foreignKey.findReferencedEntity() == targetTable) {
 							result.add(foreignKey.getAdapter(ConnectionAdapter.class));
 						}
 					}

Modified: artemis/trunk/jiemamy-view/src/test/java/org/jiemamy/internal/JiemamyViewFacadeImplTest.java
===================================================================
--- artemis/trunk/jiemamy-view/src/test/java/org/jiemamy/internal/JiemamyViewFacadeImplTest.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ artemis/trunk/jiemamy-view/src/test/java/org/jiemamy/internal/JiemamyViewFacadeImplTest.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -130,8 +130,7 @@
 		assertThat(foreignKeys.get(0), is(foreignKey));
 		assertThat(foreignKey.getKeyColumns().size(), is(1));
 		assertThat(foreignKey.getReferenceColumns().size(), is(1));
-		assertThat(referenceResolver.resolve(foreignKey.getKeyColumns().get(0)), is(TableUtil.getColumns(tables[1])
-			.get(0)));
+		assertThat(referenceResolver.resolve(foreignKey.getKeyColumns().get(0)), is(tables[1].findColumns().get(0)));
 		
 		viewFacade.rollback(save);
 		foreignKeys = TableUtil.getForeignKeys(tables[1]);
@@ -261,7 +260,7 @@
 		assertThat(rootModel.getEntities().contains(tableModel1), is(true));
 		assertThat(diagramPresentationModel.getNodeProfiles().get(nodeAdapter1), is(nodeProfile1));
 		assertThat(nodeProfile1.getBoundary(), is(rectangle1));
-		assertThat(TableUtil.getColumns(tableModel1).size(), is(3));
+		assertThat(tableModel1.findColumns().size(), is(3));
 		
 		TableModel tableModel2 = factory.newModel(TableModel.class);
 		viewFacade.addEntity(tableModel2);
@@ -282,7 +281,7 @@
 		assertThat(rootModel.getEntities().contains(tableModel1), is(true));
 		assertThat(diagramPresentationModel.getNodeProfiles().get(nodeAdapter1), is(nodeProfile1));
 		assertThat(nodeProfile1.getBoundary(), is(rectangle1));
-		assertThat(TableUtil.getColumns(tableModel2).size(), is(2));
+		assertThat(tableModel2.findColumns().size(), is(2));
 		
 		TableModel tableModel3 = factory.newModel(TableModel.class);
 		viewFacade.addEntity(tableModel3);
@@ -303,7 +302,7 @@
 		assertThat(rootModel.getEntities().contains(tableModel1), is(true));
 		assertThat(diagramPresentationModel.getNodeProfiles().get(nodeAdapter1), is(nodeProfile1));
 		assertThat(nodeProfile1.getBoundary(), is(rectangle1));
-		assertThat(TableUtil.getColumns(tableModel3).size(), is(2));
+		assertThat(tableModel3.findColumns().size(), is(2));
 		
 		return new TableModel[] {
 			tableModel1,

Modified: zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/Jiemamy.java
===================================================================
--- zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/Jiemamy.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/Jiemamy.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -259,9 +259,9 @@
 	}
 	
 	/**
-	 * TODO for daisuke
+	 * コンテキストが関与するXML名前空間の配列を取得する。
 	 * 
-	 * @return
+	 * @return コンテキストが関与するXML名前空間の配列
 	 * @since 0.2
 	 */
 	public JiemamyNamespace[] getNamespaces() {

Modified: zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/JiemamyImplementation.java
===================================================================
--- zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/JiemamyImplementation.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/JiemamyImplementation.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -60,9 +60,9 @@
 	JiemamyFactory getFactory(Jiemamy jiemamy);
 	
 	/**
-	 * TODO for daisuke
+	 * Jiemamy実装が関与するXML名前空間の配列を取得する。
 	 * 
-	 * @return
+	 * @return Jiemamy実装が関与するXML名前空間の配列
 	 * @since 0.2
 	 */
 	JiemamyNamespace[] getNamespaces();

Modified: zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/model/entity/TableModel.java
===================================================================
--- zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/model/entity/TableModel.java	2009-04-30 11:36:12 UTC (rev 3340)
+++ zeus/trunk/jiemamy-spec-core/src/main/java/org/jiemamy/model/entity/TableModel.java	2009-04-30 12:03:35 UTC (rev 3341)
@@ -36,6 +36,41 @@
 public interface TableModel extends EntityModel {
 	
 	/**
+	 * カラムのリストを取得する。
+	 * 
+	 * <p>返される{@link List}は他に影響を及ぼさない独立したインスタンスである。</p>
+	 * 
+	 * @return カラムのリスト
+	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
+	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
+	 */
+	List<ColumnModel> findColumns();
+	
+	/**
+	 * 外部キー制約のリストを取得する。
+	 * 
+	 * <p>返される{@link List}は他に影響を及ぼさない独立したインスタンスである。</p>
+	 * 
+	 * @return 外部キー制約のリスト
+	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
+	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
+	 */
+	List<ForeignKey> findForeignKeys();
+	
+	/**
+	 * このテーブルの主キーを取得する。
+	 * 
+	 * <p>テーブルに対して設定された主キーだけではなく、カラムに対して設定された主キーも検索対象となる。</p>
+	 * 
+	 * @return 主キー
+	 * @throws TooManyElementsException 複数の主キーが見つかった場合
+	 * @throws ElementNotFoundException 主キーが存在しない場合
+	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
+	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
+	 */
+	PrimaryKey findPrimaryKey();
+	
+	/**
 	 * 指定した型を持つ属性を取得する。
 	 * 
 	 * @param <T> 属性の型
@@ -87,38 +122,30 @@
 	<T extends AttributeModel>List<T> getAttributes(Class<T> clazz);
 	
 	/**
-	 * 指定した名前を持つカラムを取得する。
+	 * 指定した型を持つ属性のリストを取得する。
 	 * 
-	 * @param columnName カラム名
-	 * @return 見つかったカラム
-	 * @throws TooManyElementsException 同名のカラムが複数見つかった場合
-	 * @throws ElementNotFoundException カラムが見つからなかった場合 
-	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
-	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
-	 */
-	ColumnModel getColumn(String columnName);
-	
-	/**
-	 * カラムのリストを取得する。
-	 * 
 	 * <p>返される{@link List}は他に影響を及ぼさない独立したインスタンスである。</p>
 	 * 
-	 * @return カラムのリスト
+	 * @param <T> 属性の型
+	 * @param clazz 検索する型
+	 * @param columnAttr カラム属性も検索対象とする場合は{@code true}、そうでない場合は{@code false}
+	 * @return 属性のリスト
 	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
 	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
 	 */
-	List<ColumnModel> findColumns();
+	<T extends AttributeModel>List<T> getAttributes(Class<T> clazz, boolean columnAttr);
 	
 	/**
-	 * 外部キー制約のリストを取得する。
+	 * 指定した名前を持つカラムを取得する。
 	 * 
-	 * <p>返される{@link List}は他に影響を及ぼさない独立したインスタンスである。</p>
-	 * 
-	 * @return 外部キー制約のリスト
+	 * @param columnName カラム名
+	 * @return 見つかったカラム
+	 * @throws TooManyElementsException 同名のカラムが複数見つかった場合
+	 * @throws ElementNotFoundException カラムが見つからなかった場合 
 	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
 	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
 	 */
-	List<ForeignKey> findForeignKeys();
+	ColumnModel getColumn(String columnName);
 	
 	/**
 	 * インデックスのリストを取得する。
@@ -130,17 +157,4 @@
 	 * @since 0.2
 	 */
 	List<IndexModel> getIndexes();
-	
-	/**
-	 * このテーブルの主キーを取得する。
-	 * 
-	 * <p>テーブルに対して設定された主キーだけではなく、カラムに対して設定された主キーも検索対象となる。</p>
-	 * 
-	 * @return 主キー
-	 * @throws TooManyElementsException 複数の主キーが見つかった場合
-	 * @throws ElementNotFoundException 主キーが存在しない場合
-	 * @throws IllegalArgumentException 引数に{@code null}を与えた場合
-	 * @throws UnsupportedOperationException 実装がこのメソッドをサポートしない場合
-	 */
-	PrimaryKey findPrimaryKey();
 }



Jiemamy-notify メーリングリストの案内
Back to archive index