svnno****@sourc*****
svnno****@sourc*****
2009年 4月 13日 (月) 11:53:55 JST
Revision: 3243 http://svn.sourceforge.jp/view?root=jiemamy&view=rev&rev=3243 Author: j5ik2o Date: 2009-04-13 11:53:55 +0900 (Mon, 13 Apr 2009) Log Message: ----------- Defaultのコンテキストとファクトリを用意した。 Modified Paths: -------------- charon/jiemamy-jpa-importer/trunk/src/main/java/org/jiemamy/composer/importer/JpaImporter.java leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaReaderContext.java leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaWriterContext.java leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImpl.java leto/jiemamy-entity-io/trunk/src/test/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImplTest.java Added Paths: ----------- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderContext.java leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderFactory.java Removed Paths: ------------- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderFactoryImpl.java -------------- next part -------------- Modified: charon/jiemamy-jpa-importer/trunk/src/main/java/org/jiemamy/composer/importer/JpaImporter.java =================================================================== --- charon/jiemamy-jpa-importer/trunk/src/main/java/org/jiemamy/composer/importer/JpaImporter.java 2009-04-13 02:40:16 UTC (rev 3242) +++ charon/jiemamy-jpa-importer/trunk/src/main/java/org/jiemamy/composer/importer/JpaImporter.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -26,15 +26,15 @@ import org.jiemamy.composer.ImportException; import org.jiemamy.composer.Importer; import org.jiemamy.dialect.Dialect; +import org.jiemamy.entity.io.meta.DefaultEntityMetaReaderContext; +import org.jiemamy.entity.io.meta.DefaultEntityMetaReaderFactory; import org.jiemamy.entity.io.meta.EntityClassNotFoundException; import org.jiemamy.entity.io.meta.EntityMeta; import org.jiemamy.entity.io.meta.EntityMetaReader; -import org.jiemamy.entity.io.meta.EntityMetaReaderContext; import org.jiemamy.entity.io.meta.EntityMetaReaderFactory; import org.jiemamy.entity.io.meta.PropertyMeta; import org.jiemamy.entity.io.meta.impl.ColumnMetaFactoryImpl; import org.jiemamy.entity.io.meta.impl.EntityMetaFactoryImpl; -import org.jiemamy.entity.io.meta.impl.EntityMetaReaderFactoryImpl; import org.jiemamy.entity.io.meta.impl.PropertyMetaFactoryImpl; import org.jiemamy.entity.io.meta.impl.TableMetaFactoryImpl; import org.jiemamy.model.RootModel; @@ -95,7 +95,7 @@ Validate.notNull(config.getJavaFileEncoding()); Validate.notNull(config.getDialect()); - EntityMetaReaderContext context = new EntityMetaReaderContext(); + DefaultEntityMetaReaderContext context = new DefaultEntityMetaReaderContext(); context.setClassPathDirs(toFiles(config.getClassPathDirs())); if (config.getJavaFileSrcDirs() != null) { context.setJavaSrcFileDirs(toFiles(config.getJavaFileSrcDirs())); @@ -111,7 +111,7 @@ context.setEntityMetaFactory(new EntityMetaFactoryImpl(new TableMetaFactoryImpl(), new PropertyMetaFactoryImpl( new ColumnMetaFactoryImpl()))); - EntityMetaReaderFactory entityMetaReaderFactory = new EntityMetaReaderFactoryImpl(); + EntityMetaReaderFactory entityMetaReaderFactory = new DefaultEntityMetaReaderFactory(); try { EntityMetaReader entityMetaReader = entityMetaReaderFactory.createEntityMetaReader(context); List<EntityMeta> entityMetas = entityMetaReader.read(); Added: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderContext.java =================================================================== --- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderContext.java (rev 0) +++ leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderContext.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -0,0 +1,162 @@ +/* + * Copyright 2007-2009 Jiemamy Project and the Others. + * Created on Apr 3, 2009 + * + * 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.entity.io.meta; + +import java.io.File; +import java.util.List; +import java.util.regex.Pattern; + +import org.apache.commons.lang.builder.ToStringBuilder; + +import org.jiemamy.utils.CollectionsUtil; + +/** + * {@link EntityMetaReader}のコンテキストクラス。 + * + * @author j5ik2o + */ +public class DefaultEntityMetaReaderContext implements EntityMetaReaderContext { + + private List<File> classPathDirs; + + private String packageName; + + private EntityMetaFactory entityMetaFactory; + + private List<Pattern> shortClassNamePatterns = CollectionsUtil.newArrayList(); + + private List<Pattern> ignoreShortClassNamePatterns = CollectionsUtil.newArrayList(); + + private boolean readComment; + + private List<File> javaSrcFileDirs; + + private String javaFileEncoding; + + + public List<File> getClassPathDirs() { + return classPathDirs; + } + + public EntityMetaFactory getEntityMetaFactory() { + return entityMetaFactory; + } + + public List<Pattern> getIgnoreShortClassNamePatterns() { + return ignoreShortClassNamePatterns; + } + + public String getJavaFileEncoding() { + return javaFileEncoding; + } + + public List<File> getJavaSrcFileDirs() { + return javaSrcFileDirs; + } + + public String getPackageName() { + return packageName; + } + + public List<Pattern> getShortClassNamePatterns() { + return shortClassNamePatterns; + } + + public boolean isReadComment() { + return readComment; + } + + /** + * クラスパスのリストを設定する。 + * + * @param classPathDirs クラスパスのリスト + */ + public void setClassPathDirs(List<File> classPathDirs) { + this.classPathDirs = classPathDirs; + } + + /** + * {@link EntityMetaFactory}を設定する。 + * + * @param entityMetaFactory {@link EntityMetaFactory} + */ + public void setEntityMetaFactory(EntityMetaFactory entityMetaFactory) { + this.entityMetaFactory = entityMetaFactory; + } + + /** + * 無視する短いクラス名のパターンのリストを設定する。 + * + * @param ignoreShortClassNamePatterns 無視する短いクラス名のパターンのリスト + */ + public void setIgnoreShortClassNamePatterns(List<Pattern> ignoreShortClassNamePatterns) { + this.ignoreShortClassNamePatterns = ignoreShortClassNamePatterns; + } + + /** + * Javaファイルのエンコーディングを設定する。 + * + * @param javaFileEncoding Javaファイルのエンコーディング + */ + public void setJavaFileEncoding(String javaFileEncoding) { + this.javaFileEncoding = javaFileEncoding; + } + + /** + * Javaソースファイルのディレクトリのリストを設定する。 + * + * @param javaFileSrcDirs Javaソースファイルのディレクトリのリスト + */ + public void setJavaSrcFileDirs(List<File> javaFileSrcDirs) { + javaSrcFileDirs = javaFileSrcDirs; + } + + /** + * パッケージ名を設定する。 + * + * @param packageName パッケージ名 + */ + public void setPackageName(String packageName) { + this.packageName = packageName; + } + + /** + * コメントを処理するかどうかのフラグを設定する。 + * + * @param readComment コメント処理フラグ + */ + public void setReadComment(boolean readComment) { + this.readComment = readComment; + } + + /** + * 短いクラス名のパターンのリストを取得する。 + * + * @param shortClassNamePatterns 短いクラス名のパターンのリストを + */ + public void setShortClassNamePatterns(List<Pattern> shortClassNamePatterns) { + this.shortClassNamePatterns = shortClassNamePatterns; + } + + @Override + public String toString() { + return ToStringBuilder.reflectionToString(this); + } + +} Property changes on: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderContext.java ___________________________________________________________________ Added: svn:mime-type + text/plain Copied: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderFactory.java (from rev 3236, leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderFactoryImpl.java) =================================================================== --- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderFactory.java (rev 0) +++ leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/DefaultEntityMetaReaderFactory.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -0,0 +1,34 @@ +/* + * Copyright 2007-2009 Jiemamy Project and the Others. + * Created on Apr 10, 2009 + * + * 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.entity.io.meta; + +import org.jiemamy.entity.io.meta.impl.EntityMetaReaderImpl; + +/** + * {@link EntityMetaReaderFactory}の実装クラス。 + * + * @author j5ik2o + */ +public class DefaultEntityMetaReaderFactory implements EntityMetaReaderFactory { + + public EntityMetaReader createEntityMetaReader(EntityMetaReaderContext entityMetaReaderContext) { + return new EntityMetaReaderImpl(entityMetaReaderContext); + } + +} Modified: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaReaderContext.java =================================================================== --- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaReaderContext.java 2009-04-13 02:40:16 UTC (rev 3242) +++ leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaReaderContext.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -22,181 +22,67 @@ import java.util.List; import java.util.regex.Pattern; -import org.apache.commons.lang.builder.ToStringBuilder; - -import org.jiemamy.utils.CollectionsUtil; - /** - * {@link EntityMetaReader}のコンテキストクラス。 + * {@link EntityMetaReader}のコンテキストインターフェイス。 * * @author j5ik2o */ -public class EntityMetaReaderContext { +public interface EntityMetaReaderContext { - private List<File> classPathDirs; - - private String packageName; - - private EntityMetaFactory entityMetaFactory; - - private List<Pattern> shortClassNamePatterns = CollectionsUtil.newArrayList(); - - private List<Pattern> ignoreShortClassNamePatterns = CollectionsUtil.newArrayList(); - - private boolean readComment; - - private List<File> javaSrcFileDirs; - - private String javaFileEncoding; - - /** * クラスパスのリストを取得する。 * * @return クラスパスのリスト */ - public List<File> getClassPathDirs() { - return classPathDirs; - } + List<File> getClassPathDirs(); /** * {@link EntityMetaFactory}を取得する。 * * @return {@link EntityMetaFactory} */ - public EntityMetaFactory getEntityMetaFactory() { - return entityMetaFactory; - } + EntityMetaFactory getEntityMetaFactory(); /** * 無視するクラス名のパターンのリストを取得する。 * * @return 無視するクラス名パターンのリスト */ - public List<Pattern> getIgnoreShortClassNamePatterns() { - return ignoreShortClassNamePatterns; - } + List<Pattern> getIgnoreShortClassNamePatterns(); /** * Javaファイルのエンコーディングを取得する。 * * @return Javaファイルのエンコーディング */ - public String getJavaFileEncoding() { - return javaFileEncoding; - } + String getJavaFileEncoding(); /** * Javaソースファイルのディレクトリのリストを取得する。 * * @return Javaソースファイルのディレクトリのリスト */ - public List<File> getJavaSrcFileDirs() { - return javaSrcFileDirs; - } + List<File> getJavaSrcFileDirs(); /** * パッケージ名を取得する。 * * @return パッケージ名 */ - public String getPackageName() { - return packageName; - } + String getPackageName(); /** * 短いクラス名のパターンのリストを取得する。 * * @return 短いクラス名のパターンのリスト */ - public List<Pattern> getShortClassNamePatterns() { - return shortClassNamePatterns; - } + List<Pattern> getShortClassNamePatterns(); /** * コメントを処理するかどうかのフラグを取得する。 * * @return コメント処理フラグ */ - public boolean isReadComment() { - return readComment; - } + boolean isReadComment(); - /** - * クラスパスのリストを設定する。 - * - * @param classPathDirs クラスパスのリスト - */ - public void setClassPathDirs(List<File> classPathDirs) { - this.classPathDirs = classPathDirs; - } - - /** - * {@link EntityMetaFactory}を設定する。 - * - * @param entityMetaFactory {@link EntityMetaFactory} - */ - public void setEntityMetaFactory(EntityMetaFactory entityMetaFactory) { - this.entityMetaFactory = entityMetaFactory; - } - - /** - * 無視する短いクラス名のパターンのリストを設定する。 - * - * @param ignoreShortClassNamePatterns 無視する短いクラス名のパターンのリスト - */ - public void setIgnoreShortClassNamePatterns(List<Pattern> ignoreShortClassNamePatterns) { - this.ignoreShortClassNamePatterns = ignoreShortClassNamePatterns; - } - - /** - * Javaファイルのエンコーディングを設定する。 - * - * @param javaFileEncoding Javaファイルのエンコーディング - */ - public void setJavaFileEncoding(String javaFileEncoding) { - this.javaFileEncoding = javaFileEncoding; - } - - /** - * Javaソースファイルのディレクトリのリストを設定する。 - * - * @param javaFileSrcDirs Javaソースファイルのディレクトリのリスト - */ - public void setJavaSrcFileDirs(List<File> javaFileSrcDirs) { - javaSrcFileDirs = javaFileSrcDirs; - } - - /** - * パッケージ名を設定する。 - * - * @param packageName パッケージ名 - */ - public void setPackageName(String packageName) { - this.packageName = packageName; - } - - /** - * コメントを処理するかどうかのフラグを設定する。 - * - * @param readComment コメント処理フラグ - */ - public void setReadComment(boolean readComment) { - this.readComment = readComment; - } - - /** - * 短いクラス名のパターンのリストを取得する。 - * - * @param shortClassNamePatterns 短いクラス名のパターンのリストを - */ - public void setShortClassNamePatterns(List<Pattern> shortClassNamePatterns) { - this.shortClassNamePatterns = shortClassNamePatterns; - } - - @Override - public String toString() { - return ToStringBuilder.reflectionToString(this); - } - } Modified: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaWriterContext.java =================================================================== --- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaWriterContext.java 2009-04-13 02:40:16 UTC (rev 3242) +++ leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/EntityMetaWriterContext.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -19,10 +19,10 @@ package org.jiemamy.entity.io.meta; /** - * {@link EntityMetaWriter}のコンテキストクラス。 + * {@link EntityMetaWriter}のコンテキストインターフェイス。 * * @author j5ik2o */ -public class EntityMetaWriterContext { +public interface EntityMetaWriterContext { } Deleted: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderFactoryImpl.java =================================================================== --- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderFactoryImpl.java 2009-04-13 02:40:16 UTC (rev 3242) +++ leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderFactoryImpl.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -1,36 +0,0 @@ -/* - * Copyright 2007-2009 Jiemamy Project and the Others. - * Created on Apr 10, 2009 - * - * 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.entity.io.meta.impl; - -import org.jiemamy.entity.io.meta.EntityMetaReader; -import org.jiemamy.entity.io.meta.EntityMetaReaderContext; -import org.jiemamy.entity.io.meta.EntityMetaReaderFactory; - -/** - * {@link EntityMetaReaderFactory}の実装クラス。 - * - * @author j5ik2o - */ -public class EntityMetaReaderFactoryImpl implements EntityMetaReaderFactory { - - public EntityMetaReader createEntityMetaReader(EntityMetaReaderContext entityMetaReaderContext) { - return new EntityMetaReaderImpl(entityMetaReaderContext); - } - -} Modified: leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImpl.java =================================================================== --- leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImpl.java 2009-04-13 02:40:16 UTC (rev 3242) +++ leto/jiemamy-entity-io/trunk/src/main/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImpl.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -68,7 +68,7 @@ * * @param entityMetaReaderContext コンテキスト */ - EntityMetaReaderImpl(EntityMetaReaderContext entityMetaReaderContext) { + public EntityMetaReaderImpl(EntityMetaReaderContext entityMetaReaderContext) { Validate.notNull(entityMetaReaderContext); Validate.notNull(entityMetaReaderContext.getClassPathDirs()); Validate.notEmpty(entityMetaReaderContext.getClassPathDirs()); Modified: leto/jiemamy-entity-io/trunk/src/test/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImplTest.java =================================================================== --- leto/jiemamy-entity-io/trunk/src/test/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImplTest.java 2009-04-13 02:40:16 UTC (rev 3242) +++ leto/jiemamy-entity-io/trunk/src/test/java/org/jiemamy/entity/io/meta/impl/EntityMetaReaderImplTest.java 2009-04-13 02:53:55 UTC (rev 3243) @@ -29,9 +29,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.jiemamy.entity.io.meta.DefaultEntityMetaReaderContext; +import org.jiemamy.entity.io.meta.DefaultEntityMetaReaderFactory; import org.jiemamy.entity.io.meta.EntityMeta; import org.jiemamy.entity.io.meta.EntityMetaReader; -import org.jiemamy.entity.io.meta.EntityMetaReaderContext; import org.jiemamy.entity.io.meta.RelationshipType; import org.jiemamy.utils.CollectionsUtil; import org.jiemamy.utils.ResourceUtil; @@ -54,7 +55,7 @@ */ @Test public void testRead() throws Exception { - EntityMetaReaderContext context = new EntityMetaReaderContext(); + DefaultEntityMetaReaderContext context = new DefaultEntityMetaReaderContext(); context.setJavaFileEncoding("UTF-8"); List<File> classPathDirs = CollectionsUtil.newArrayList(); classPathDirs.add(ResourceUtil.getBuildDirNoException(example.entity.Employee.class).getCanonicalFile()); @@ -66,7 +67,7 @@ context.setJavaSrcFileDirs(javaFileSrcDirs); context.setEntityMetaFactory(new EntityMetaFactoryImpl(new TableMetaFactoryImpl(), new PropertyMetaFactoryImpl( new ColumnMetaFactoryImpl()))); - entityMetaReader = new EntityMetaReaderFactoryImpl().createEntityMetaReader(context); + entityMetaReader = new DefaultEntityMetaReaderFactory().createEntityMetaReader(context); List<EntityMeta> entityMetas = entityMetaReader.read(); EntityMeta em = entityMetas.get(0);