svnno****@sourc*****
svnno****@sourc*****
2008年 12月 11日 (木) 02:02:42 JST
Revision: 2239 http://svn.sourceforge.jp/view?root=jiemamy&view=rev&rev=2239 Author: daisuke_m Date: 2008-12-11 02:02:42 +0900 (Thu, 11 Dec 2008) Log Message: ----------- Validation, Assertionの強化。 Modified Paths: -------------- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/DefaultInstanceAccessStrategy.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/dialect/GenericDataTypeResolver.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/AdapterManager.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/AbstractContext.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/DatabaseReader.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetColumnProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConnectionsProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConstrainEntitiesProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetDataSetProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetEntityProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetMappingProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetNodesProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetPrimaryKeyColumnsProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetReferenceEntitiesProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/IsCyclicProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideEntityNameProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideForeignKeyNameProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetDefaultColumnsProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetRecordProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/UpdateMappingsProcessor.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ConstraintUtil.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/DriverUtil.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/EntityDependencyCalculator.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ForEachUtil.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/JmIOUtil.java artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/debug/S2ContainerUtil.java artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/general/GeneralDialect.java artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/helper/JiemamyXADataSource.java artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractModelChangeSupport.java artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractObservable.java artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableList.java artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableMap.java artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableSet.java artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/model/JiemamyHandler.java artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/JiemamyDefaultSerializer.java artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/ModelWriter.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetBendpointsProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetColorProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetConstraintProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/RemoveFromDiagramProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/ResetBendpointProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetBendpointsProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetColorProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetConstraintProcessor.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationModelImpl.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationsImpl.java artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/utils/JmPointUtil.java artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetColorProcessorTest.java artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetConstraintProcessorTest.java zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/utils/Processor.java zeus/trunk/org.jiemamy.spec.view/src/main/java/org/jiemamy/model/DiagramPresentationModel.java Removed Paths: ------------- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/Processor.java artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/general/datatype/ -------------- next part -------------- Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/DefaultInstanceAccessStrategy.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/DefaultInstanceAccessStrategy.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/DefaultInstanceAccessStrategy.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -23,7 +23,6 @@ import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.exception.IllegalImplementationException; -import org.jiemamy.extension.InstanceAccessStrategy; /** * インスタンスを取得する、デフォルトの戦略クラス。 @@ -45,6 +44,7 @@ * @category instance creation */ public DefaultInstanceAccessStrategy() { + this(null); } /** @@ -61,6 +61,7 @@ */ @SuppressWarnings("unchecked") public T getInstance(String fqcn) throws ClassNotFoundException { + assert cache != null; if (cache.get(fqcn) == null) { Class<? extends T> clazz; if (classLoader != null) { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/dialect/GenericDataTypeResolver.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/dialect/GenericDataTypeResolver.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/extension/dialect/GenericDataTypeResolver.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -27,9 +27,6 @@ import org.jiemamy.exception.IllegalDataTypeImplementationException; import org.jiemamy.exception.IllegalDialectImplementationException; import org.jiemamy.exception.UnexpectedConditionError; -import org.jiemamy.extension.dialect.DataTypeResolver; -import org.jiemamy.extension.dialect.Dialect; -import org.jiemamy.extension.dialect.MappingInfo; import org.jiemamy.model.datatype.DataType; import org.jiemamy.model.datatype.DataTypeDescriptor; import org.jiemamy.utils.JmStringUtil; @@ -58,6 +55,7 @@ * {@inheritDoc} */ public List<Class<? extends DataType>> getAllModelingDataTypes() { + assert allModelingDataTypes != null; return allModelingDataTypes; } @@ -65,6 +63,7 @@ * {@inheritDoc} */ public void register(Class<? extends DataType> clazz) { + assert allModelingDataTypes != null; Validate.notNull(clazz); allModelingDataTypes.add(clazz); } @@ -73,6 +72,7 @@ * {@inheritDoc} */ public DataType resolveDataType(DataTypeDescriptor dataTypeDescriptor) { + assert allModelingDataTypes != null; Validate.notNull(dataTypeDescriptor); for (Class<? extends DataType> clazz : allModelingDataTypes) { if (clazz.getAnnotation(MappingInfo.class).descriptor() == dataTypeDescriptor.getClass()) { @@ -92,6 +92,7 @@ * {@inheritDoc} */ public DataTypeDescriptor resolveDataTypeDescriptor(String typeName) throws DataTypeNotFoundException { + assert allModelingDataTypes != null; for (Class<? extends DataType> clazz : allModelingDataTypes) { MappingInfo annotation = clazz.getAnnotation(MappingInfo.class); if (annotation.typeName().equalsIgnoreCase(typeName) Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/AdapterManager.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/AdapterManager.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/AdapterManager.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -41,6 +41,7 @@ public <T>T getAdapter(Class<T> adapter) { assert adapters != null; Validate.notNull(adapter); + for (Object myAdapter : adapters) { if (adapter.isAssignableFrom(myAdapter.getClass())) { return (T) myAdapter; @@ -67,6 +68,7 @@ public boolean hasAdapter(Class<?> adapter) { assert adapters != null; Validate.notNull(adapter); + for (Object myAdapter : adapters) { if (adapter.isAssignableFrom(myAdapter.getClass())) { return true; Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/AbstractContext.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/AbstractContext.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/AbstractContext.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -38,6 +38,7 @@ * @return コンテキスト値のマップ */ public Map<String, Object> getProperties() { + assert properties != null; return properties; } @@ -49,6 +50,7 @@ */ @SuppressWarnings("unchecked") public <T>T getValue(String key) { + assert properties != null; return (T) properties.get(key); } @@ -57,6 +59,7 @@ * @param properties コンテキスト値のマップ */ public void setProperties(Map<String, Object> properties) { + assert properties != null; this.properties = properties; } @@ -67,6 +70,7 @@ * @param value コンテキスト値 */ public <T>void setValue(String key, T value) { + assert properties != null; properties.put(key, value); } } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/DatabaseReader.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/DatabaseReader.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/interpreter/DatabaseReader.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -24,6 +24,7 @@ import java.sql.SQLException; import java.util.List; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.extension.dialect.DatabaseReadingContext; @@ -60,6 +61,8 @@ * @category instance creation */ public DatabaseReader(Dialect dialect, DatabaseReadingContext ctx) { + Validate.notNull(dialect); + Validate.notNull(ctx); this.dialect = dialect; this.ctx = ctx; } @@ -71,8 +74,14 @@ * @param visitor 各エンティティに情報に対するビジター。 * @return ビジターに依存した、実行結果 * @throws SQLException + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public <T>T readEnities(Connection connection, AbstractResultSetVisitor<T> visitor) throws SQLException { + assert dialect != null; + assert ctx != null; + Validate.notNull(connection); + Validate.notNull(visitor); + dialect.getAdvisor().setUpRead(connection); String schema = ctx.getValue("schema"); // DatabaseImporter.SCHEMA @@ -92,8 +101,14 @@ * @param visitor 各エンティティに情報に対するビジター。 * @return ビジターに依存した、実行結果 * @throws SQLException + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public <T>List<T> readRelations(Connection connection, AbstractResultSetVisitor<T> visitor) throws SQLException { + assert dialect != null; + assert ctx != null; + Validate.notNull(connection); + Validate.notNull(visitor); + dialect.getAdvisor().setUpRead(connection); String schema = ctx.getValue("schema"); // DatabaseImporter.SCHEMA Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetColumnProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetColumnProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetColumnProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,6 +20,7 @@ import java.util.List; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.exception.ElementNotFoundException; @@ -40,9 +41,11 @@ /** * コンストラクタ。 * @param columnName カラム名 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetColumnProcessor(String columnName) { + Validate.notNull(columnName); this.columnName = columnName; } @@ -51,6 +54,7 @@ * @throws TooManyElementsException 複数のカラムが見つかった時 */ public ColumnModel process(TableModel tableModel) throws TooManyElementsException { + Validate.notNull(tableModel); List<ColumnModel> columns = CollectionsUtil.newArrayList(); for (ColumnModel column : tableModel.getColumns()) { if (columnName.equals(column.getName())) { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConnectionsProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConnectionsProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConnectionsProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -17,6 +17,7 @@ import java.util.List; import org.apache.commons.collections15.list.UnmodifiableList; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.model.RootModel; @@ -58,6 +59,7 @@ */ @SuppressWarnings("unchecked") public List<T> process(RootModel rootModel) { + Validate.notNull(rootModel); List<T> connections = CollectionsUtil.newArrayList(); for (AbstractNodeModel node : rootModel.getNodes()) { for (AbstractConnectionModel connection : node.getSourceConnections()) { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConstrainEntitiesProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConstrainEntitiesProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetConstrainEntitiesProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,6 +20,7 @@ import java.util.List; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.model.connection.AbstractConnectionModel; @@ -51,6 +52,7 @@ * {@inheritDoc} */ public List<AbstractEntityModel> process(AbstractEntityModel entity) { + Validate.notNull(entity); return recursive ? processRecursive(entity) : processNonRecursive(entity); } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetDataSetProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetDataSetProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetDataSetProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,6 +20,8 @@ import java.util.List; +import org.apache.commons.lang.Validate; + import org.jiemamy.model.RootModel; import org.jiemamy.model.dataset.RecordModel; import org.jiemamy.model.node.AbstractEntityModel; @@ -42,9 +44,11 @@ * コンストラクタ。 * @param index データセットのインデックス番号 * @param entity 対象エンティティ + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetDataSetProcessor(int index, AbstractEntityModel entity) { + Validate.notNull(entity); this.index = index; this.entity = entity; } @@ -53,6 +57,7 @@ * {@inheritDoc} */ public List<RecordModel> process(RootModel rootModel) { + Validate.notNull(rootModel); return rootModel.getInsertDataSets().get(index).getRecords().get(entity); } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetEntityProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetEntityProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetEntityProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,6 +20,7 @@ import java.util.List; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.exception.ElementNotFoundException; @@ -49,10 +50,12 @@ * @param <T> * @param clazz エンティティの種類を表すクラス * @param entityName エンティティ名 + * @throws IllegalArgumentException 引数entityNameに{@code null}を与えた場合 * @category instance creation */ @SuppressWarnings("hiding") public <T> GetEntityProcessor(Class<T> clazz, String entityName) { + Validate.notNull(entityName); this.clazz = clazz; this.entityName = entityName; } @@ -60,9 +63,11 @@ /** * コンストラクタ。 * @param entityName エンティティ名 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetEntityProcessor(String entityName) { + Validate.notNull(entityName); this.entityName = entityName; } @@ -71,6 +76,7 @@ * @throws TooManyElementsException */ public AbstractEntityModel process(RootModel rootModel) throws TooManyElementsException { + Validate.notNull(rootModel); List<AbstractEntityModel> entities = CollectionsUtil.newArrayList(); for (AbstractNodeModel node : rootModel.getNodes()) { if (node instanceof AbstractEntityModel) { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetMappingProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetMappingProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetMappingProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,6 +18,8 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + import org.jiemamy.exception.ElementNotFoundException; import org.jiemamy.model.ColumnModel; import org.jiemamy.model.connection.ForeignKeyMapping; @@ -36,9 +38,11 @@ /** * コンストラクタ。 * @param referenceColumn + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetMappingProcessor(ColumnModel referenceColumn) { + Validate.notNull(referenceColumn); this.referenceColumn = referenceColumn; } @@ -46,6 +50,7 @@ * {@inheritDoc} */ public ForeignKeyMapping process(ForeignKeyModel fkModel) { + Validate.notNull(fkModel); for (ForeignKeyMapping mapping : fkModel.getMappings()) { if (mapping.getReferenceColumn().equals(referenceColumn)) { return mapping; Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetNodesProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetNodesProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetNodesProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -16,6 +16,7 @@ import java.util.List; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.model.RootModel; @@ -36,9 +37,11 @@ /** * コンストラクタ。 * @param clazz ノードの種類を表すクラス + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetNodesProcessor(Class<T> clazz) { + Validate.notNull(clazz); this.clazz = clazz; } @@ -47,6 +50,7 @@ */ @SuppressWarnings("unchecked") public List<T> process(RootModel rootModel) { + Validate.notNull(rootModel); List<T> nodes = CollectionsUtil.newArrayList(); for (AbstractNodeModel node : rootModel.getNodes()) { Class<? extends AbstractNodeModel> nodeClass = node.getClass(); Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetPrimaryKeyColumnsProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetPrimaryKeyColumnsProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetPrimaryKeyColumnsProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -21,6 +21,8 @@ import java.util.ArrayList; import java.util.List; +import org.apache.commons.lang.Validate; + import org.jiemamy.model.ColumnModel; import org.jiemamy.model.constraint.PrimaryKeyConstraintModel; import org.jiemamy.model.node.TableModel; @@ -54,6 +56,7 @@ * {@inheritDoc} */ public List<ColumnModel> process(TableModel tableModel) { + Validate.notNull(tableModel); List<ColumnModel> pks = new ArrayList<ColumnModel>(); for (ColumnModel column : tableModel.getColumns()) { if (column.hasConstraint(PrimaryKeyConstraintModel.class)) { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetReferenceEntitiesProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetReferenceEntitiesProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/GetReferenceEntitiesProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,6 +20,7 @@ import java.util.List; +import org.apache.commons.lang.Validate; import org.seasar.framework.util.tiger.CollectionsUtil; import org.jiemamy.model.connection.AbstractConnectionModel; @@ -51,6 +52,7 @@ * {@inheritDoc} */ public List<AbstractEntityModel> process(AbstractEntityModel entity) { + Validate.notNull(entity); return recursive ? processRecursive(entity) : processNonRecursive(entity); } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/IsCyclicProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/IsCyclicProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/IsCyclicProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,6 +18,8 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + import org.jiemamy.model.connection.AbstractConnectionModel; import org.jiemamy.utils.Processor; @@ -49,6 +51,7 @@ * {@inheritDoc} */ public Boolean process(AbstractConnectionModel connectionModel) { + Validate.notNull(connectionModel); return connectionModel.getSource().equals(connectionModel.getTarget()); } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideEntityNameProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideEntityNameProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideEntityNameProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,6 +18,8 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + import org.jiemamy.exception.ElementNotFoundException; import org.jiemamy.exception.TooManyElementsException; import org.jiemamy.exception.UnexpectedConditionError; @@ -45,9 +47,11 @@ * コンストラクタ。 * @param entityModel * @param validator + * @throws IllegalArgumentException 引数entityModelに{@code null}を与えた場合 * @category instance creation */ public ProvideEntityNameProcessor(AbstractEntityModel entityModel, IdentifierValidator validator) { + Validate.notNull(entityModel); this.entityModel = entityModel; this.validator = validator; } @@ -56,6 +60,7 @@ * {@inheritDoc} */ public String process(RootModel rootModel) { + Validate.notNull(rootModel); StringBuilder sb; int counter = 0; boolean duplicated; Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideForeignKeyNameProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideForeignKeyNameProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/ProvideForeignKeyNameProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -63,6 +63,7 @@ * {@inheritDoc} */ public String process(RootModel rootModel) { + Validate.notNull(rootModel); StringBuilder sb; int counter = 0; do { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetDefaultColumnsProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetDefaultColumnsProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetDefaultColumnsProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,6 +18,8 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + import org.jiemamy.exception.TooManyElementsException; import org.jiemamy.model.ColumnModel; import org.jiemamy.model.RootModel; @@ -49,10 +51,14 @@ * @param sourceTable 参照元テーブル * @param referencePkColumn 参照先(targetのPKカラム) * @param createColumn 同名カラムが存在しなかった場合、新規作成するかどうか + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public SetDefaultColumnsProcessor(RootModel rootModel, TableModel sourceTable, ColumnModel referencePkColumn, boolean createColumn) { + Validate.notNull(rootModel); + Validate.notNull(sourceTable); + Validate.notNull(referencePkColumn); this.rootModel = rootModel; this.sourceTable = sourceTable; this.referencePkColumn = referencePkColumn; @@ -63,6 +69,7 @@ * {@inheritDoc} */ public Void process(ForeignKeyMapping mapping) { + Validate.notNull(mapping); mapping.setReferenceColumn(referencePkColumn); // targetのPKと同じ名前のカラムが、同じ型であればマッピング Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetRecordProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetRecordProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/SetRecordProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,6 +18,8 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + import org.jiemamy.model.ColumnModel; import org.jiemamy.model.dataset.RecordModel; import org.jiemamy.utils.Processor; @@ -39,9 +41,11 @@ * コンストラクタ。 * @param column カラム * @param value 値 + * @throws IllegalArgumentException 引数columnに{@code null}を与えた場合 * @category instance creation */ public SetRecordProcessor(ColumnModel column, String value) { + Validate.notNull(column); this.column = column; this.value = value; } @@ -49,8 +53,9 @@ /** * {@inheritDoc} */ - public Void process(RecordModel record) { - record.getValues().put(column, value); + public Void process(RecordModel recordModel) { + Validate.notNull(recordModel); + recordModel.getValues().put(column, value); return null; } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/UpdateMappingsProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/UpdateMappingsProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/internal/processor/UpdateMappingsProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -22,6 +22,8 @@ import java.util.Collections; import java.util.List; +import org.apache.commons.lang.Validate; + import org.jiemamy.exception.ElementNotFoundException; import org.jiemamy.model.ColumnModel; import org.jiemamy.model.RootModel; @@ -46,9 +48,11 @@ * コンストラクタ。 * @param rootModel * @param createColumnWithFk + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public UpdateMappingsProcessor(RootModel rootModel, boolean createColumnWithFk) { + Validate.notNull(rootModel); this.rootModel = rootModel; this.createColumnWithFk = createColumnWithFk; } @@ -57,6 +61,9 @@ * {@inheritDoc} */ public Void process(ForeignKeyModel fkModel) { + Validate.notNull(fkModel); + Validate.notNull(fkModel.getSource()); + Validate.notNull(fkModel.getTarget()); TableModel targetTable = (TableModel) fkModel.getTarget(); TableModel sourceTable = (TableModel) fkModel.getSource(); List<ColumnModel> targetPkColumns = targetTable.getPrimaryKeyColumns(); Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ConstraintUtil.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ConstraintUtil.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ConstraintUtil.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -38,6 +38,7 @@ */ public static ConstraintsModel marge(ConstraintsModel... inputConstraintss) { Validate.notEmpty(inputConstraintss); + ConstraintsModel constraints = new ConstraintsModelImpl(); for (ConstraintsModel inputConstraints : inputConstraintss) { for (Constraint constraint : inputConstraints.getConstraints()) { Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/DriverUtil.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/DriverUtil.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/DriverUtil.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -55,6 +55,7 @@ */ public static List<Class<? extends Driver>> getDriverClasses(URL[] paths) throws IOException { Validate.notNull(paths); + URLClassLoader classLoader = new URLClassLoader(paths); List<Class<? extends Driver>> driverList = CollectionsUtil.newArrayList(); Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/EntityDependencyCalculator.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/EntityDependencyCalculator.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/EntityDependencyCalculator.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -30,6 +30,7 @@ */ public static List<AbstractEntityModel> getSortedEntityList(RootModel rootModel) { Validate.notNull(rootModel); + results = new ArrayList<AbstractEntityModel>(rootModel.getNodes().size()); for (AbstractNodeModel node : rootModel.getNodes()) { @@ -50,6 +51,7 @@ */ private static void addDependsdentsToResult(AbstractEntityModel entityModel) { Validate.notNull(entityModel); + for (AbstractConnectionModel connection : entityModel.getSourceConnections()) { assert connection.getTarget() != null : "entityのsourceConnectionsに、" + "source/targetが揃っていないconnectionがappendされている"; Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ForEachUtil.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ForEachUtil.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/ForEachUtil.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -23,6 +23,8 @@ import java.util.Collection; import java.util.Map; +import org.apache.commons.lang.Validate; + /** * {@link Collection}や{@link Map}等、複数の要素を持つObjectに対して、全ての要素に処理を行うためのユーティリティ。 * @author daisuke @@ -38,9 +40,13 @@ * @param target 処理対象コレクション * @param visitor ビジター * @return accept結果 - * @throws Exception + * @throws E + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static <T, R, E extends Exception>R accept(Iterable<T> target, CollectionVisitor<T, R, E> visitor) throws E { + Validate.notNull(target); + Validate.notNull(visitor); + for (T connection : target) { R result = visitor.visit(connection); if (result != null) { @@ -61,8 +67,12 @@ * @param visitor ビジター * @return accept結果 * @throws E + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static <K, V, R, E extends Exception>R accept(Map<K, V> targetMap, MapVisitor<K, V, R, E> visitor) throws E { + Validate.notNull(targetMap); + Validate.notNull(visitor); + for (Map.Entry<K, V> entry : targetMap.entrySet()) { R result = visitor.visit(entry.getKey(), entry.getValue()); if (result != null) { @@ -80,9 +90,13 @@ * @param visitor ビジター * @return accept結果 * @throws SQLException + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static <R>R accept(ResultSet target, CollectionVisitor<ResultSet, R, SQLException> visitor) throws SQLException { + Validate.notNull(target); + Validate.notNull(visitor); + while (target.next()) { visitor.visit(target); } Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/JmIOUtil.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/JmIOUtil.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/JmIOUtil.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,8 +18,6 @@ */ package org.jiemamy.utils; -import java.io.Closeable; -import java.io.IOException; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; @@ -36,23 +34,23 @@ */ public final class JmIOUtil { - /** - * 無条件にリソースを閉じる。 - * - * <p>{@link Closeable#close()} と等価であるが、例外を無視する。 - * 主に finally 句内で使われることを想定している。</p> - * - * @param closeable 閉じる対象。nullでも、既にclose済みであっても構わない。 - */ - public static void closeQuietly(Closeable closeable) { - if (closeable != null) { - try { - closeable.close(); - } catch (IOException ignore) { - // ignore - } - } - } +// /** +// * 無条件にリソースを閉じる。 +// * +// * <p>{@link Closeable#close()} と等価であるが、例外を無視する。 +// * 主に finally 句内で使われることを想定している。</p> +// * +// * @param closeable 閉じる対象。nullでも、既にclose済みであっても構わない。 +// */ +// public static void closeQuietly(Closeable closeable) { +// if (closeable != null) { +// try { +// closeable.close(); +// } catch (IOException ignore) { +// // ignore +// } +// } +// } /** * 無条件にリソースを閉じる。 Deleted: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/Processor.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/Processor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/Processor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -1,41 +0,0 @@ -/* - * Copyright 2007-2008 MIYAMOTO Daisuke, jiemamy.org and the Others. - * Created on 2008/08/01 - * - * 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.utils; - -/** - * オブジェクトに対して実行する処理のインターフェイス。 - * - * <p>cf. http://d.hatena.ne.jp/daisuke-m/20080801/1217594494</p> - * - * @param <R> 結果の型 - * @param <T> 処理対象のオブジェクトの型 - * @param <E> 処理が投げる可能性のある例外の型(投げない場合は{@link RuntimeException}を指定) - * @author daisuke - */ -public interface Processor<T, R, E extends Exception> { - - /** - * オブジェクトに対する処理を実行する。 - * @param target 対象オブジェクト - * @return 結果 - * @throws E Process処理が正常に終了しなかった場合 - */ - R process(T target) throws E; - -} Modified: artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/debug/S2ContainerUtil.java =================================================================== --- artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/debug/S2ContainerUtil.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.core/src/main/java/org/jiemamy/utils/debug/S2ContainerUtil.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -37,6 +37,7 @@ */ public static String toString(S2Container container) { Validate.notNull(container); + StrBuilder sb = new StrBuilder(); sb.appendln("--------"); Modified: artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/general/GeneralDialect.java =================================================================== --- artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/general/GeneralDialect.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/general/GeneralDialect.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -76,6 +76,7 @@ * {@inheritDoc} */ public ConnectionAdvisor getAdvisor() { + assert advisor != null; return advisor; } @@ -83,6 +84,7 @@ * {@inheritDoc} */ public DataTypeResolver getDataTypeResolver() { + assert dataTypeResolver != null; return dataTypeResolver; } @@ -90,6 +92,7 @@ * {@inheritDoc} */ public Quoter getQuoter() { + assert quoter != null; return quoter; } @@ -97,6 +100,7 @@ * {@inheritDoc} */ public IdentifierValidator getValidator() { + assert validator != null; return validator; } Modified: artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/helper/JiemamyXADataSource.java =================================================================== --- artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/helper/JiemamyXADataSource.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.dialect/src/main/java/org/jiemamy/dialect/helper/JiemamyXADataSource.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -64,6 +64,7 @@ * @param value 値 */ public void addProperty(String name, String value) { + assert properties != null; properties.put(name, value); } @@ -126,6 +127,7 @@ * {@inheritDoc} */ public XAConnection getXAConnection(String user, String password) throws SQLException { + assert properties != null; Connection con = null; if (StringUtil.isEmpty(user)) { con = DriverManager.getConnection(url); Modified: artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractModelChangeSupport.java =================================================================== --- artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractModelChangeSupport.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractModelChangeSupport.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -34,6 +34,7 @@ * {@inheritDoc} */ public void addModelChangeListener(ModelChangeListener listener) { + assert listeners != null; listeners.add(listener); } @@ -41,6 +42,7 @@ * {@inheritDoc} */ public void removeModelChangeListener(ModelChangeListener listener) { + assert listeners != null; listeners.remove(listener); } @@ -49,6 +51,7 @@ * @param event */ protected void fireModelChange(ModelChangeEvent event) { + assert listeners != null; for (ModelChangeListener listener : listeners) { listener.modelChanged(event); } Modified: artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractObservable.java =================================================================== --- artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractObservable.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/event/AbstractObservable.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -39,6 +39,7 @@ * {@inheritDoc} */ public void addModelChangeListener(ModelChangeListener listener) { + assert listeners != null; listeners.add(listener); } @@ -46,6 +47,7 @@ * {@inheritDoc} */ public void fireModelChange(Object model, Field field) { + assert listeners != null; ModelChangeEvent e = new ModelChangeEvent(model, field); for (ModelChangeListener listener : listeners) { listener.modelChanged(e); @@ -56,6 +58,7 @@ * {@inheritDoc} */ public void removeModelChangeListener(ModelChangeListener listener) { + assert listeners != null; listeners.remove(listener); } Modified: artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableList.java =================================================================== --- artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableList.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableList.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -21,6 +21,8 @@ import java.util.List; import java.util.ListIterator; +import org.apache.commons.lang.Validate; + import org.jiemamy.Adaptable; import org.jiemamy.event.ModelChangeEvent; import org.jiemamy.event.ModelChangeListener; @@ -46,6 +48,7 @@ * @param <T> * @param list * @return {@link ObservableList} + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static <T>ObservableList<T> decorate(List<T> list) { return new ObservableList<T>(list); @@ -75,6 +78,8 @@ * @category instance creation */ ObservableList(List<T> list) { + Validate.notNull(list); + this.list = list; modelChangeListener = new ModelChangeListenerImpl(this); } Modified: artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableMap.java =================================================================== --- artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableMap.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableMap.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -25,6 +25,8 @@ import java.util.Map; import java.util.Set; +import org.apache.commons.lang.Validate; + import org.jiemamy.Adaptable; import org.jiemamy.event.ModelChangeEvent; import org.jiemamy.event.ModelChangeListener; @@ -50,6 +52,7 @@ * @param <V> * @param map * @return {@link ObservableMap} + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static <K, V>ObservableMap<K, V> decorate(Map<K, V> map) { return new ObservableMap<K, V>(map); @@ -79,6 +82,7 @@ * @category instance creation */ ObservableMap(Map<K, V> map) { + Validate.notNull(map); this.map = map; modelChangeListener = new ModelChangeListenerImpl(this); } Modified: artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableSet.java =================================================================== --- artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableSet.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.event/src/main/java/org/jiemamy/util/ObservableSet.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -25,6 +25,8 @@ import java.util.List; import java.util.Set; +import org.apache.commons.lang.Validate; + import org.jiemamy.Adaptable; import org.jiemamy.event.ModelChangeEvent; import org.jiemamy.event.ModelChangeListener; @@ -48,6 +50,7 @@ * @param <T> * @param set * @return {@link ObservableList} + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static <T>ObservableSet<T> decorate(Set<T> set) { return new ObservableSet<T>(set); @@ -77,6 +80,7 @@ * @category instance creation */ ObservableSet(Set<T> set) { + Validate.notNull(set); this.set = set; modelChangeListener = new ModelChangeListenerImpl(this); } Modified: artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/model/JiemamyHandler.java =================================================================== --- artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/model/JiemamyHandler.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/model/JiemamyHandler.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -21,6 +21,7 @@ import java.util.Stack; import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.Validate; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.xml.sax.Attributes; @@ -62,8 +63,8 @@ * @category instance creation */ public JiemamyHandler(InstanceCreationStrategy modelStrategy, InstanceAccessStrategy<Dialect> dialectStrategy) { - assert modelStrategy != null; - assert dialectStrategy != null; + Validate.notNull(modelStrategy); + Validate.notNull(dialectStrategy); JiemamyModelFactory.init(modelStrategy); DialectProvider.init(dialectStrategy); } Modified: artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/JiemamyDefaultSerializer.java =================================================================== --- artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/JiemamyDefaultSerializer.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/JiemamyDefaultSerializer.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -26,6 +26,7 @@ import javax.xml.parsers.SAXParserFactory; import org.apache.commons.lang.SerializationException; +import org.apache.commons.lang.Validate; import org.xml.sax.SAXException; import org.jiemamy.JiemamySerializer; @@ -56,6 +57,7 @@ /** * コンストラクタ。 * @param modelStrategy + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public JiemamyDefaultSerializer(InstanceCreationStrategy modelStrategy) { @@ -66,12 +68,13 @@ * コンストラクタ。 * @param modelStrategy * @param dialectStrategy + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public JiemamyDefaultSerializer(InstanceCreationStrategy modelStrategy, InstanceAccessStrategy<Dialect> dialectStrategy) { - assert modelStrategy != null; - assert dialectStrategy != null; + Validate.notNull(modelStrategy); + Validate.notNull(dialectStrategy); this.modelStrategy = modelStrategy; this.dialectStrategy = dialectStrategy; } Modified: artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/ModelWriter.java =================================================================== --- artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/ModelWriter.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.serializer/src/main/java/org/jiemamy/serializer/ModelWriter.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -24,14 +24,15 @@ import com.megginson.sax.DataWriter; +import org.apache.commons.lang.Validate; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; import org.jiemamy.serializer.element.RootXmlElement; import org.jiemamy.serializer.element.XmlElement; import org.jiemamy.serializer.element.XmlElement.ElementState; -import org.jiemamy.model.DiagramPresentations; /** * モデルライター。 @@ -76,9 +77,15 @@ * @param resourceQueue * @param schemaLocation * @throws SAXException - * @category instance creation + * @throws IllegalArgumentException 引数rootModel, resourceQueueに{@code null}を与えた場合 + * @category instance creation */ public ModelWriter(RootModel rootModel, Queue<Byte> resourceQueue, String schemaLocation) throws SAXException { + assert xmlStack != null; + assert dataWriter != null; + Validate.notNull(rootModel); + Validate.notNull(resourceQueue); + this.resourceQueue = resourceQueue; dataWriter.forceNSDecleration(Namespaces.CORE, ""); if (rootModel.hasAdapter(DiagramPresentations.class)) { @@ -104,6 +111,7 @@ * @throws SAXException */ public void dispose() throws SAXException { + assert dataWriter != null; dataWriter.endDocument(); } @@ -122,6 +130,9 @@ * @throws SAXException */ public boolean write() throws SAXException { + assert xmlStack != null; + assert dataWriter != null; + if (xmlStack.isEmpty()) { return false; } @@ -140,6 +151,9 @@ * @param bytes */ private void addToQueue(byte[] bytes) { + assert resourceQueue != null; + Validate.notNull(bytes); + for (byte b : bytes) { if (b != 0) { resourceQueue.add(b); @@ -156,7 +170,6 @@ attrs.addAttribute(Namespaces.XSI, "schemaLocation", "xsi:schemaLocation", "CDATA", schemaLocation); schemaLocation = null; } - } private void write(XmlElement element) throws SAXException { Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetBendpointsProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetBendpointsProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetBendpointsProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,9 +20,11 @@ import java.util.List; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; import org.jiemamy.model.connection.AbstractConnectionModel; -import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.geometory.JmPoint; import org.jiemamy.utils.Processor; @@ -41,9 +43,11 @@ * コンストラクタ。 * @param index * @param connection + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetBendpointsProcessor(int index, AbstractConnectionModel connection) { + Validate.notNull(connection); this.index = index; this.connection = connection; } @@ -52,6 +56,7 @@ * {@inheritDoc} */ public List<JmPoint> process(RootModel rootModel) { + Validate.notNull(rootModel); return rootModel.getAdapter(DiagramPresentations.class).get(index).getConnectionLayouts().get(connection); } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetColorProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetColorProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetColorProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,10 +18,12 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; +import org.jiemamy.model.geometory.JmColor; import org.jiemamy.model.node.AbstractNodeModel; -import org.jiemamy.model.DiagramPresentations; -import org.jiemamy.model.geometory.JmColor; import org.jiemamy.utils.Processor; /** @@ -39,9 +41,11 @@ * コンストラクタ。 * @param index * @param node + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetColorProcessor(int index, AbstractNodeModel node) { + Validate.notNull(node); this.index = index; this.node = node; } @@ -50,6 +54,7 @@ * {@inheritDoc} */ public JmColor process(RootModel rootModel) { + Validate.notNull(rootModel); return rootModel.getAdapter(DiagramPresentations.class).get(index).getNodeColors().get(node); } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetConstraintProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetConstraintProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/GetConstraintProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,10 +18,12 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; +import org.jiemamy.model.geometory.JmRectangle; import org.jiemamy.model.node.AbstractNodeModel; -import org.jiemamy.model.DiagramPresentations; -import org.jiemamy.model.geometory.JmRectangle; import org.jiemamy.utils.Processor; /** @@ -39,9 +41,11 @@ * コンストラクタ。 * @param index * @param node + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public GetConstraintProcessor(int index, AbstractNodeModel node) { + Validate.notNull(node); this.index = index; this.node = node; } @@ -50,6 +54,7 @@ * {@inheritDoc} */ public JmRectangle process(RootModel rootModel) { + Validate.notNull(rootModel); return rootModel.getAdapter(DiagramPresentations.class).get(index).getNodeLayouts().get(node); } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/RemoveFromDiagramProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/RemoveFromDiagramProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/RemoveFromDiagramProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,9 +18,11 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; import org.jiemamy.model.node.AbstractNodeModel; -import org.jiemamy.model.DiagramPresentations; import org.jiemamy.utils.Processor; /** @@ -38,9 +40,11 @@ * コンストラクタ。 * @param index * @param node + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public RemoveFromDiagramProcessor(int index, AbstractNodeModel node) { + Validate.notNull(node); this.index = index; this.node = node; } @@ -49,6 +53,7 @@ * {@inheritDoc} */ public Void process(RootModel rootModel) { + Validate.notNull(rootModel); rootModel.getAdapter(DiagramPresentations.class).get(index).getNodeLayouts().remove(node); return null; } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/ResetBendpointProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/ResetBendpointProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/ResetBendpointProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,8 +20,10 @@ import java.util.List; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentationModel; import org.jiemamy.model.connection.AbstractConnectionModel; -import org.jiemamy.model.DiagramPresentationModel; import org.jiemamy.model.geometory.JmPoint; import org.jiemamy.model.geometory.JmRectangle; import org.jiemamy.utils.Processor; @@ -42,9 +44,11 @@ /** * コンストラクタ。 * @param connection + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public ResetBendpointProcessor(AbstractConnectionModel connection) { + Validate.notNull(connection); this.connection = connection; } @@ -52,6 +56,7 @@ * {@inheritDoc} */ public Void process(DiagramPresentationModel diagramPresentation) { + Validate.notNull(diagramPresentation); List<JmPoint> bendpoints = diagramPresentation.getConnectionLayouts().get(connection); if (bendpoints == null) { throw new IllegalStateException("表示されていないレイアウトをリセットしようとしました。"); Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetBendpointsProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetBendpointsProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetBendpointsProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -20,9 +20,11 @@ import java.util.List; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; import org.jiemamy.model.connection.AbstractConnectionModel; -import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.geometory.JmPoint; import org.jiemamy.utils.Processor; @@ -44,9 +46,12 @@ * @param index ベンドポイントインデックス * @param connection 対象のコネクション * @param bendpoints 座標のリスト + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public SetBendpointsProcessor(int index, AbstractConnectionModel connection, List<JmPoint> bendpoints) { + Validate.notNull(connection); + Validate.notNull(bendpoints); this.index = index; this.connection = connection; this.bendpoints = bendpoints; @@ -56,6 +61,7 @@ * {@inheritDoc} */ public Void process(RootModel rootModel) { + Validate.notNull(rootModel); rootModel.getAdapter(DiagramPresentations.class).get(index).getConnectionLayouts().put(connection, bendpoints); return null; } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetColorProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetColorProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetColorProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,10 +18,12 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; +import org.jiemamy.model.geometory.JmColor; import org.jiemamy.model.node.AbstractNodeModel; -import org.jiemamy.model.DiagramPresentations; -import org.jiemamy.model.geometory.JmColor; import org.jiemamy.utils.Processor; /** @@ -42,9 +44,12 @@ * @param index * @param node * @param color + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public SetColorProcessor(int index, AbstractNodeModel node, JmColor color) { + Validate.notNull(node); + Validate.notNull(color); this.index = index; this.node = node; this.color = color; @@ -54,6 +59,7 @@ * {@inheritDoc} */ public Void process(RootModel rootModel) { + Validate.notNull(rootModel); rootModel.getAdapter(DiagramPresentations.class).get(index).getNodeColors().put(node, color); return null; } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetConstraintProcessor.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetConstraintProcessor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/internal/processor/SetConstraintProcessor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -18,10 +18,12 @@ */ package org.jiemamy.internal.processor; +import org.apache.commons.lang.Validate; + +import org.jiemamy.model.DiagramPresentations; import org.jiemamy.model.RootModel; +import org.jiemamy.model.geometory.JmRectangle; import org.jiemamy.model.node.AbstractNodeModel; -import org.jiemamy.model.DiagramPresentations; -import org.jiemamy.model.geometory.JmRectangle; import org.jiemamy.utils.Processor; /** @@ -42,9 +44,12 @@ * @param index * @param node * @param constraint + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 * @category instance creation */ public SetConstraintProcessor(int index, AbstractNodeModel node, JmRectangle constraint) { + Validate.notNull(node); + Validate.notNull(constraint); this.index = index; this.node = node; this.constraint = constraint; @@ -54,6 +59,7 @@ * {@inheritDoc} */ public JmRectangle process(RootModel rootModel) { + Validate.notNull(rootModel); rootModel.getAdapter(DiagramPresentations.class).get(index).getNodeLayouts().put(node, constraint); return null; } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationModelImpl.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationModelImpl.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationModelImpl.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -22,6 +22,7 @@ import java.util.Map; import java.util.Set; +import org.apache.commons.lang.Validate; import org.seasar.framework.container.annotation.tiger.Binding; import org.jiemamy.internal.processor.ResetBendpointProcessor; @@ -77,6 +78,7 @@ * @return コネクションのベンドポイント情報 */ public Map<AbstractConnectionModel, List<JmPoint>> getConnectionLayouts() { + assert connectionLayouts != null; return connectionLayouts; } @@ -85,6 +87,7 @@ * @return 表示モード */ public Set<DisplayItem> getDisplayTargetSet() { + assert displayTargetSet != null; return displayTargetSet; } @@ -101,6 +104,7 @@ * @return ノードの色情報 */ public Map<AbstractNodeModel, JmColor> getNodeColors() { + assert nodeColors != null; return nodeColors; } @@ -109,6 +113,7 @@ * @return ノードのレイアウト情報 */ public Map<AbstractNodeModel, JmRectangle> getNodeLayouts() { + assert nodeLayouts != null; return nodeLayouts; } @@ -116,6 +121,7 @@ * {@inheritDoc} */ public void resetBendpoints(AbstractConnectionModel connection) { + Validate.notNull(connection); ProcessorUtil.process(this, new ResetBendpointProcessor(connection)); } @@ -123,6 +129,10 @@ * {@inheritDoc} */ public void setBendpoints(AbstractConnectionModel connection, List<JmPoint> bendpoints) { + assert connectionLayouts != null; + Validate.notNull(connection); + Validate.notNull(bendpoints); + connectionLayouts.get(connection).clear(); connectionLayouts.get(connection).addAll(bendpoints); } @@ -131,6 +141,10 @@ * {@inheritDoc} */ public void setColor(AbstractNodeModel node, JmColor color) { + assert nodeColors != null; + Validate.notNull(node); + Validate.notNull(color); + nodeColors.put(node, color); } @@ -138,14 +152,20 @@ * {@inheritDoc} */ public void setConstraint(AbstractNodeModel node, JmRectangle constraint) { + assert nodeLayouts != null; + Validate.notNull(node); + Validate.notNull(constraint); + nodeLayouts.put(node, constraint); } /** * 表示モードを設定する。 * @param displayTargetSet 表示モード + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public void setDisplayTargetSet(Set<DisplayItem> displayTargetSet) { + Validate.notNull(displayTargetSet); this.displayTargetSet = displayTargetSet; } @@ -160,24 +180,30 @@ /** * コネクションのベンドポイント情報を設定する。 * @param connectionLayouts コネクションのベンドポイント情報 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setConnectionLayouts(Map<AbstractConnectionModel, List<JmPoint>> connectionLayouts) { + Validate.notNull(connectionLayouts); this.connectionLayouts = connectionLayouts; } /** * ノードの色情報を設定する。 * @param nodeColors ノードの色情報 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setNodeColors(Map<AbstractNodeModel, JmColor> nodeColors) { + Validate.notNull(nodeColors); this.nodeColors = nodeColors; } /** * ノードのレイアウト情報を設定する。 * @param nodeLayouts ノードのレイアウト情報 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setNodeLayouts(Map<AbstractNodeModel, JmRectangle> nodeLayouts) { + Validate.notNull(nodeLayouts); this.nodeLayouts = nodeLayouts; } } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationsImpl.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationsImpl.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/model/DiagramPresentationsImpl.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -39,6 +39,7 @@ * {@inheritDoc} */ public void appendModel(DiagramPresentationModel presentation) { + assert composite != null; Validate.notNull(presentation); composite.add(presentation); } @@ -47,6 +48,7 @@ * {@inheritDoc} */ public DiagramPresentationModel get(int index) { + assert composite != null; return composite.get(index); } @@ -54,6 +56,7 @@ * {@inheritDoc} */ public Iterator<DiagramPresentationModel> iterator() { + assert composite != null; return UnmodifiableIterator.decorate(composite.iterator()); } @@ -61,6 +64,7 @@ * {@inheritDoc} */ public void removeModel(DiagramPresentationModel presentation) { + assert composite != null; Validate.notNull(presentation); composite.remove(presentation); } @@ -69,6 +73,7 @@ * {@inheritDoc} */ public int size() { + assert composite != null; return composite.size(); } Modified: artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/utils/JmPointUtil.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/utils/JmPointUtil.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/main/java/org/jiemamy/utils/JmPointUtil.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -1,5 +1,7 @@ package org.jiemamy.utils; +import org.apache.commons.lang.Validate; + import org.jiemamy.model.geometory.JmPoint; import org.jiemamy.model.geometory.JmRectangle; @@ -11,23 +13,27 @@ /** * 2点の差を求める。 - * * @param from 基準点 * @param to 対象点 * @return 差 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static JmPoint delta(JmPoint from, JmPoint to) { + Validate.notNull(from); + Validate.notNull(to); return new JmPoint(from.x - to.x, from.y - to.y); } /** * 矩形の配置点(左上)2点の差を求める。 - * * @param from 基準矩形 * @param to 対象矩形 * @return 差 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static JmPoint delta(JmRectangle from, JmRectangle to) { + Validate.notNull(from); + Validate.notNull(to); return new JmPoint(from.x - to.x, from.y - to.y); } @@ -37,8 +43,10 @@ * @param x X軸移動量 * @param y Y軸移動量 * @return 移動結果 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static JmPoint shiftNegative(JmPoint target, int x, int y) { + Validate.notNull(target); return new JmPoint(target.x - x, target.y - y); } @@ -47,8 +55,10 @@ * @param target 移動対象 * @param delta 移動量 * @return 移動結果 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static JmPoint shiftNegative(JmPoint target, JmPoint delta) { + Validate.notNull(target); return new JmPoint(target.x - delta.x, target.y - delta.y); } @@ -58,8 +68,10 @@ * @param x X軸移動量 * @param y Y軸移動量 * @return 移動結果 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static JmPoint shiftPositive(JmPoint target, int x, int y) { + Validate.notNull(target); return new JmPoint(target.x + x, target.y + y); } @@ -68,8 +80,10 @@ * @param target 移動対象 * @param delta 移動量 * @return 移動結果 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ public static JmPoint shiftPositive(JmPoint target, JmPoint delta) { + Validate.notNull(target); return new JmPoint(target.x + delta.x, target.y + delta.y); } Modified: artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetColorProcessorTest.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetColorProcessorTest.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetColorProcessorTest.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -58,9 +58,9 @@ presentation.setName("テスト"); rootModel.getAdapter(DiagramPresentations.class).appendModel(presentation); - TableModel table = rootModel.newModel(TableModel.class); - table.setName("T_TEST"); - rootModel.appendModel(table); + tableModel = rootModel.newModel(TableModel.class); + tableModel.setName("T_TEST"); + rootModel.appendModel(tableModel); } /** Modified: artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetConstraintProcessorTest.java =================================================================== --- artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetConstraintProcessorTest.java 2008-12-10 15:52:49 UTC (rev 2238) +++ artemis/trunk/org.jiemamy.view/src/test/java/org/jiemamy/internal/processor/SetConstraintProcessorTest.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -58,9 +58,9 @@ presentation.setName("テスト"); rootModel.getAdapter(DiagramPresentations.class).appendModel(presentation); - TableModel table = rootModel.newModel(TableModel.class); - table.setName("T_TEST"); - rootModel.appendModel(table); + tableModel = rootModel.newModel(TableModel.class); + tableModel.setName("T_TEST"); + rootModel.appendModel(tableModel); } /** Modified: zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/utils/Processor.java =================================================================== --- zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/utils/Processor.java 2008-12-10 15:52:49 UTC (rev 2238) +++ zeus/trunk/org.jiemamy.spec.core/src/main/java/org/jiemamy/utils/Processor.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -1,3 +1,21 @@ +/* + * Copyright 2007-2008 MIYAMOTO Daisuke, jiemamy.org and the Others. + * Created on 2008/08/01 + * + * 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.utils; /** Modified: zeus/trunk/org.jiemamy.spec.view/src/main/java/org/jiemamy/model/DiagramPresentationModel.java =================================================================== --- zeus/trunk/org.jiemamy.spec.view/src/main/java/org/jiemamy/model/DiagramPresentationModel.java 2008-12-10 15:52:49 UTC (rev 2238) +++ zeus/trunk/org.jiemamy.spec.view/src/main/java/org/jiemamy/model/DiagramPresentationModel.java 2008-12-10 17:02:42 UTC (rev 2239) @@ -72,6 +72,7 @@ * 配置してもよい(MAY)。</p> * * @param connection 設定対象コネクション + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void resetBendpoints(AbstractConnectionModel connection); @@ -82,6 +83,7 @@ * * @param connection 設定対象コネクション * @param bendpoints ベンドポイント情報のリスト + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setBendpoints(AbstractConnectionModel connection, List<JmPoint> bendpoints); @@ -89,6 +91,7 @@ * ノードの背景色情報を設定する。 * @param node 設定対象ノード * @param color 背景色情報 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setColor(AbstractNodeModel node, JmColor color); @@ -96,12 +99,14 @@ * ノードの位置サイズ情報を設定する。 * @param node 設定対象ノード * @param constraint 位置サイズ情報 + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setConstraint(AbstractNodeModel node, JmRectangle constraint); /** * 表示モードを設定する。 * @param displayTargetSet 表示モード + * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ void setDisplayTargetSet(Set<DisplayItem> displayTargetSet);