svnno****@sourc*****
svnno****@sourc*****
2009年 4月 19日 (日) 09:35:08 JST
Revision: 3324 http://svn.sourceforge.jp/view?root=jiemamy&view=rev&rev=3324 Author: daisuke_m Date: 2009-04-19 09:35:08 +0900 (Sun, 19 Apr 2009) Log Message: ----------- refactor Modified Paths: -------------- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/generic/GenericReservedWords.java artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/CompositeValidator.java artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/impl/AbstractIdentifierValidator.java artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/validator/impl/AbstractIdentifierValidatorTest.java artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlIdentifierValidator.java artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlIdentifierValidator.java artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99IdentifierValidator.java Added Paths: ----------- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsChecker.java artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWordsChecker.java artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWordsChecker.java artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWordsChecker.java Removed Paths: ------------- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsProvider.java artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWords.java artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWords.java artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWords.java -------------- next part -------------- Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/generic/GenericReservedWords.java =================================================================== --- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/generic/GenericReservedWords.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/generic/GenericReservedWords.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -21,13 +21,14 @@ import java.util.Arrays; import java.util.List; -import org.jiemamy.dialect.internal.ReservedWordsProvider; +import org.jiemamy.dialect.internal.ReservedWordsChecker; /** - * 一般SQL方言における予約語を提供するクラス。 + * {@link GenericDialect}における予約語をチェックするクラス。 + * * @author daisuke */ -public class GenericReservedWords implements ReservedWordsProvider { +public class GenericReservedWords implements ReservedWordsChecker { private static final List<String> RESERVED_WORDS = Arrays.asList("ABSOLUTE", "ACCESS", "ACCESSIBLE", "ACCOUNT", "ACTION", "ACTIVATE", "ACTIVE", "ADA", "ADD", Copied: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsChecker.java (from rev 3321, artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsProvider.java) =================================================================== --- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsChecker.java (rev 0) +++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsChecker.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -0,0 +1,35 @@ +/* + * Copyright 2007-2009 Jiemamy Project and the Others. + * Created on 2008/08/24 + * + * 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.dialect.internal; + +/** + * 予約語かどうかを判断するインターフェイス。 + * + * @author daisuke + */ +public interface ReservedWordsChecker { + + /** + * 与えられた識別子が予約語であるかどうか調べる。 + * + * @param name 識別子 + * @return 予約語であれば{@code true} + */ + boolean isReserved(String name); +} Deleted: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsProvider.java =================================================================== --- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsProvider.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/dialect/internal/ReservedWordsProvider.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -1,35 +0,0 @@ -/* - * Copyright 2007-2009 Jiemamy Project and the Others. - * Created on 2008/08/24 - * - * 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.dialect.internal; - -/** - * 予約語プロバイダ。 - * - * @author daisuke - */ -public interface ReservedWordsProvider { - - /** - * 与えられた識別子が予約語であるかどうか調べる。 - * - * @param name 識別子 - * @return 予約語であれば{@code true} - */ - boolean isReserved(String name); -} Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/CompositeValidator.java =================================================================== --- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/CompositeValidator.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/CompositeValidator.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -21,6 +21,7 @@ import java.util.Collection; import java.util.List; +import org.jiemamy.dialect.Dialect; import org.jiemamy.model.RootModel; import org.jiemamy.utils.CollectionsUtil; @@ -37,6 +38,13 @@ /** * 内蔵されたバリデータのリストを取得する。 + * + * <p>このメソッドは、インスタンスの持つフィールドをそのまま返す。返される{@link List}を直接操作することで、 + * このオブジェクトのフィールドとして保持される{@link List}を変更することができる。</p> + * + * <p>上記操作は、{@link Dialect}等が独自のバリデーションロジックを追加するためのものであり、 + * APIユーザにより操作を行うことは想定されていない。</p> + * * @return 内蔵されたバリデータのリスト */ public List<Validator> getValidators() { Modified: artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/impl/AbstractIdentifierValidator.java =================================================================== --- artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/impl/AbstractIdentifierValidator.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-core/src/main/java/org/jiemamy/validator/impl/AbstractIdentifierValidator.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -24,7 +24,7 @@ import org.apache.commons.lang.Validate; -import org.jiemamy.dialect.internal.ReservedWordsProvider; +import org.jiemamy.dialect.internal.ReservedWordsChecker; import org.jiemamy.model.RootModel; import org.jiemamy.model.attribute.AttributeModel; import org.jiemamy.model.datatype.DomainModel; @@ -49,7 +49,7 @@ private Pattern identifierPattern; /** 予約語プロバイダ */ - private ReservedWordsProvider reservedWords; + private ReservedWordsChecker reservedWords; /** @@ -59,7 +59,7 @@ * @param reservedWords 予約語プロバイダ * @throws IllegalArgumentException 引数に{@code null}を与えた場合 */ - public AbstractIdentifierValidator(String patternString, ReservedWordsProvider reservedWords) { + public AbstractIdentifierValidator(String patternString, ReservedWordsChecker reservedWords) { Validate.notNull(patternString); Validate.notNull(reservedWords); Modified: artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/validator/impl/AbstractIdentifierValidatorTest.java =================================================================== --- artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/validator/impl/AbstractIdentifierValidatorTest.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-core/src/test/java/org/jiemamy/validator/impl/AbstractIdentifierValidatorTest.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -26,7 +26,7 @@ import org.junit.Before; import org.junit.Test; -import org.jiemamy.dialect.internal.ReservedWordsProvider; +import org.jiemamy.dialect.internal.ReservedWordsChecker; /** * {@link AbstractIdentifierValidator}のテストクラス。 @@ -86,7 +86,7 @@ * インスタンスを生成する。 */ public IdentifierValidatorMock() { - super("^[A-Z][A-Z0-9]*$", new ReservedWordsProvider() { + super("^[A-Z][A-Z0-9]*$", new ReservedWordsChecker() { String[] array = new String[] { "RESERVED1", Modified: artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlIdentifierValidator.java =================================================================== --- artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlIdentifierValidator.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlIdentifierValidator.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -31,7 +31,7 @@ * インスタンスを生成する。 */ public MySqlIdentifierValidator() { - super("^[0-9-a-zA-Z_]+$", new MySqlReservedWords()); + super("^[0-9-a-zA-Z_]+$", new MySqlReservedWordsChecker()); } } Deleted: artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWords.java =================================================================== --- artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWords.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWords.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -1,67 +0,0 @@ -/* - * Copyright 2007-2009 Jiemamy Project and the Others. - * Created on 2008/08/24 - * - * 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.dialect.mysql; - -import java.util.Arrays; -import java.util.List; - -import org.jiemamy.dialect.internal.ReservedWordsProvider; - -/** - * MySQLの予約語を提供するクラス。 - * - * @author daisuke - */ -public class MySqlReservedWords implements ReservedWordsProvider { - - private static final List<String> RESERVED_WORDS = - Arrays.asList("ACCESSIBLE", "ADD", "ALL", "ALTER", "ANALYZE", "AND", "AS", "ASC", "ASENSITIVE", "BEFORE", - "BETWEEN", "BIGINT", "BINARY", "BLOB", "BOTH", "BY", "CALL", "CASCADE", "CASE", "CHANGE", "CHAR", - "CHARACTER", "CHECK", "COLLATE", "COLUMN", "CONDITION", "CONSTRAINT", "CONTINUE", "CONVERT", - "CREATE", "CROSS", "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", - "DATABASE", "DATABASES", "DAY_HOUR", "DAY_MICROSECOND", "DAY_MINUTE", "DAY_SECOND", "DEC", - "DECIMAL", "DECLARE", "DEFAULT", "DELAYED", "DELETE", "DESC", "DESCRIBE", "DETERMINISTIC", - "DISTINCT", "DISTINCTROW", "DIV", "DOUBLE", "DROP", "DUAL", "EACH", "ELSE", "ELSEIF", "ENCLOSED", - "ESCAPED", "EXISTS", "EXIT", "EXPLAIN", "FALSE", "FETCH", "FLOAT", "FLOAT4", "FLOAT8", "FOR", - "FORCE", "FOREIGN", "FROM", "FULLTEXT", "GRANT", "GROUP", "HAVING", "HIGH_PRIORITY", - "HOUR_MICROSECOND", "HOUR_MINUTE", "HOUR_SECOND", "IF", "IGNORE", "IN", "INDEX", "INFILE", "INNER", - "INOUT", "INSENSITIVE", "INSERT", "INT", "INT1", "INT2", "INT3", "INT4", "INT8", "INTEGER", - "INTERVAL", "INTO", "IS", "ITERATE", "JOIN", "KEY", "KEYS", "KILL", "LEADING", "LEAVE", "LEFT", - "LIKE", "LIMIT", "LINEAR", "LINES", "LOAD", "LOCALTIME", "LOCALTIMESTAMP", "LOCK", "LONG", - "LONGBLOB", "LONGTEXT", "LOOP", "LOW_PRIORITY", "MASTER_SSL_VERIFY_SERVER_CERT", "MATCH", - "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MIDDLEINT", "MINUTE_MICROSECOND", "MINUTE_SECOND", "MOD", - "MODIFIES", "NATURAL", "NOT", "NO_WRITE_TO_BINLOG", "NULL", "NUMERIC", "ON", "OPTIMIZE", "OPTION", - "OPTIONALLY", "OR", "ORDER", "OUT", "OUTER", "OUTFILE", "PRECISION", "PRIMARY", "PROCEDURE", - "PURGE", "RANGE", "READ", "READS", "READ_ONLY", "READ_WRITE", "REAL", "REFERENCES", "REGEXP", - "RELEASE", "RENAME", "REPEAT", "REPLACE", "REQUIRE", "RESTRICT", "RETURN", "REVOKE", "RIGHT", - "RLIKE", "SCHEMA", "SCHEMAS", "SECOND_MICROSECOND", "SELECT", "SENSITIVE", "SEPARATOR", "SET", - "SHOW", "SMALLINT", "SPATIAL", "SPECIFIC", "SQL", "SQLEXCEPTION", "SQLSTATE", "SQLWARNING", - "SQL_BIG_RESULT", "SQL_CALC_FOUND_ROWS", "SQL_SMALL_RESULT", "SSL", "STARTING", "STRAIGHT_JOIN", - "TABLE", "TERMINATED", "THEN", "TINYBLOB", "TINYINT", "TINYTEXT", "TO", "TRAILING", "TRIGGER", - "TRUE", "UNDO", "UNION", "UNIQUE", "UNLOCK", "UNSIGNED", "UPDATE", "USAGE", "USE", "USING", - "UTC_DATE", "UTC_TIME", "UTC_TIMESTAMP", "VALUES", "VARBINARY", "VARCHAR", "VARCHARACTER", - "VARYING", "WHEN", "WHERE", "WHILE", "WITH", "WRITE", "X509", "XOR", "YEAR_MONTH", "ZEROFILL", - "ACCESSIBLE", "LINEAR", "MASTER_SSL_VERIFY_SERVER_CERT", "RANGE", "READ_ONLY", "READ_WRITE"); - - - public boolean isReserved(String name) { - return RESERVED_WORDS.contains(name); - } - -} Copied: artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWordsChecker.java (from rev 3321, artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWords.java) =================================================================== --- artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWordsChecker.java (rev 0) +++ artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWordsChecker.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -0,0 +1,67 @@ +/* + * Copyright 2007-2009 Jiemamy Project and the Others. + * Created on 2008/08/24 + * + * 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.dialect.mysql; + +import java.util.Arrays; +import java.util.List; + +import org.jiemamy.dialect.internal.ReservedWordsChecker; + +/** + * MySQLの予約語をチェックするクラス。 + * + * @author daisuke + */ +public class MySqlReservedWordsChecker implements ReservedWordsChecker { + + private static final List<String> RESERVED_WORDS = + Arrays.asList("ACCESSIBLE", "ADD", "ALL", "ALTER", "ANALYZE", "AND", "AS", "ASC", "ASENSITIVE", "BEFORE", + "BETWEEN", "BIGINT", "BINARY", "BLOB", "BOTH", "BY", "CALL", "CASCADE", "CASE", "CHANGE", "CHAR", + "CHARACTER", "CHECK", "COLLATE", "COLUMN", "CONDITION", "CONSTRAINT", "CONTINUE", "CONVERT", + "CREATE", "CROSS", "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", + "DATABASE", "DATABASES", "DAY_HOUR", "DAY_MICROSECOND", "DAY_MINUTE", "DAY_SECOND", "DEC", + "DECIMAL", "DECLARE", "DEFAULT", "DELAYED", "DELETE", "DESC", "DESCRIBE", "DETERMINISTIC", + "DISTINCT", "DISTINCTROW", "DIV", "DOUBLE", "DROP", "DUAL", "EACH", "ELSE", "ELSEIF", "ENCLOSED", + "ESCAPED", "EXISTS", "EXIT", "EXPLAIN", "FALSE", "FETCH", "FLOAT", "FLOAT4", "FLOAT8", "FOR", + "FORCE", "FOREIGN", "FROM", "FULLTEXT", "GRANT", "GROUP", "HAVING", "HIGH_PRIORITY", + "HOUR_MICROSECOND", "HOUR_MINUTE", "HOUR_SECOND", "IF", "IGNORE", "IN", "INDEX", "INFILE", "INNER", + "INOUT", "INSENSITIVE", "INSERT", "INT", "INT1", "INT2", "INT3", "INT4", "INT8", "INTEGER", + "INTERVAL", "INTO", "IS", "ITERATE", "JOIN", "KEY", "KEYS", "KILL", "LEADING", "LEAVE", "LEFT", + "LIKE", "LIMIT", "LINEAR", "LINES", "LOAD", "LOCALTIME", "LOCALTIMESTAMP", "LOCK", "LONG", + "LONGBLOB", "LONGTEXT", "LOOP", "LOW_PRIORITY", "MASTER_SSL_VERIFY_SERVER_CERT", "MATCH", + "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MIDDLEINT", "MINUTE_MICROSECOND", "MINUTE_SECOND", "MOD", + "MODIFIES", "NATURAL", "NOT", "NO_WRITE_TO_BINLOG", "NULL", "NUMERIC", "ON", "OPTIMIZE", "OPTION", + "OPTIONALLY", "OR", "ORDER", "OUT", "OUTER", "OUTFILE", "PRECISION", "PRIMARY", "PROCEDURE", + "PURGE", "RANGE", "READ", "READS", "READ_ONLY", "READ_WRITE", "REAL", "REFERENCES", "REGEXP", + "RELEASE", "RENAME", "REPEAT", "REPLACE", "REQUIRE", "RESTRICT", "RETURN", "REVOKE", "RIGHT", + "RLIKE", "SCHEMA", "SCHEMAS", "SECOND_MICROSECOND", "SELECT", "SENSITIVE", "SEPARATOR", "SET", + "SHOW", "SMALLINT", "SPATIAL", "SPECIFIC", "SQL", "SQLEXCEPTION", "SQLSTATE", "SQLWARNING", + "SQL_BIG_RESULT", "SQL_CALC_FOUND_ROWS", "SQL_SMALL_RESULT", "SSL", "STARTING", "STRAIGHT_JOIN", + "TABLE", "TERMINATED", "THEN", "TINYBLOB", "TINYINT", "TINYTEXT", "TO", "TRAILING", "TRIGGER", + "TRUE", "UNDO", "UNION", "UNIQUE", "UNLOCK", "UNSIGNED", "UPDATE", "USAGE", "USE", "USING", + "UTC_DATE", "UTC_TIME", "UTC_TIMESTAMP", "VALUES", "VARBINARY", "VARCHAR", "VARCHARACTER", + "VARYING", "WHEN", "WHERE", "WHILE", "WITH", "WRITE", "X509", "XOR", "YEAR_MONTH", "ZEROFILL", + "ACCESSIBLE", "LINEAR", "MASTER_SSL_VERIFY_SERVER_CERT", "RANGE", "READ_ONLY", "READ_WRITE"); + + + public boolean isReserved(String name) { + return RESERVED_WORDS.contains(name); + } + +} Property changes on: artemis/trunk/jiemamy-dialect-mysql/src/main/java/org/jiemamy/dialect/mysql/MySqlReservedWordsChecker.java ___________________________________________________________________ Added: svn:mime-type + text/plain Modified: artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlIdentifierValidator.java =================================================================== --- artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlIdentifierValidator.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlIdentifierValidator.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -31,7 +31,7 @@ * インスタンスを生成する。 */ public PostgresqlIdentifierValidator() { - super("^[0-9a-zA-Z_]+$", new PostgresqlReservedWords()); + super("^[0-9a-zA-Z_]+$", new PostgresqlReservedWordsChecker()); } } Deleted: artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWords.java =================================================================== --- artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWords.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWords.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -1,51 +0,0 @@ -/* - * Copyright 2007-2009 Jiemamy Project and the Others. - * Created on 2008/08/24 - * - * 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.dialect.postgresql; - -import java.util.Arrays; -import java.util.List; - -import org.jiemamy.dialect.internal.ReservedWordsProvider; - -/** - * PostgreSQLの予約語を提供するクラス。 - * - * @author daisuke - */ -public class PostgresqlReservedWords implements ReservedWordsProvider { - - private static final List<String> RESERVED_WORDS = - Arrays.asList("ALL", "ANALYSE", "ALL", "ANALYSE", "ANALYZE", "AND", "ANY", "ARRAY", "AS", "ASC", - "ASYMMETRIC", "BOTH", "CASE", "CAST", "CHECK", "COLLATE", "COLUMN", "CONSTRAINT", "CREATE", - "CURRENT_DATE", "CURRENT_ROLE", "CURRENT_TIME", "CURRENT_TIMESTAMP", "CURRENT_USER", "DEFAULT", - "DEFERRABLE", "DESC", "DISTINCT", "DO", "ELSE", "END", "EXCEPT", "FOR", "FOREIGN", "FROM", "GRANT", - "GROUP", "HAVING", "IN", "INITIALLY", "INTERSECT", "INTO", "LEADING", "LIMIT", "LOCALTIME", - "LOCALTIMESTAMP", "NEW", "NOT", "NULL", "OFF", "OFFSET", "OLD", "ON", "ONLY", "OR", "ORDER", - "PLACING", "PRIMARY", "REFERENCES", "RETURNING", "SELECT", "SESSION_USER", "SOME", "SYMMETRIC", - "TABLE", "THEN", "TO", "TRAILING", "UNION", "UNIQUE", "USER", "USING", "WHEN", "WHERE", "FALSE", - "TRUE", "AUTHORIZATION", "BETWEEN", "BINARY", "CROSS", "FREEZE", "FULL", "ILIKE", "INNER", "IS", - "ISNULL", "JOIN", "LEFT", "LIKE", "NATURAL", "NOTNULL", "OUTER", "OVERLAPS", "RIGHT", "SIMILAR", - "VERBOSE"); - - - public boolean isReserved(String name) { - return RESERVED_WORDS.contains(name); - } - -} Copied: artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWordsChecker.java (from rev 3321, artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWords.java) =================================================================== --- artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWordsChecker.java (rev 0) +++ artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWordsChecker.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -0,0 +1,51 @@ +/* + * Copyright 2007-2009 Jiemamy Project and the Others. + * Created on 2008/08/24 + * + * 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.dialect.postgresql; + +import java.util.Arrays; +import java.util.List; + +import org.jiemamy.dialect.internal.ReservedWordsChecker; + +/** + * PostgreSQLの予約語をチェックするクラス。 + * + * @author daisuke + */ +public class PostgresqlReservedWordsChecker implements ReservedWordsChecker { + + private static final List<String> RESERVED_WORDS = + Arrays.asList("ALL", "ANALYSE", "ALL", "ANALYSE", "ANALYZE", "AND", "ANY", "ARRAY", "AS", "ASC", + "ASYMMETRIC", "BOTH", "CASE", "CAST", "CHECK", "COLLATE", "COLUMN", "CONSTRAINT", "CREATE", + "CURRENT_DATE", "CURRENT_ROLE", "CURRENT_TIME", "CURRENT_TIMESTAMP", "CURRENT_USER", "DEFAULT", + "DEFERRABLE", "DESC", "DISTINCT", "DO", "ELSE", "END", "EXCEPT", "FOR", "FOREIGN", "FROM", "GRANT", + "GROUP", "HAVING", "IN", "INITIALLY", "INTERSECT", "INTO", "LEADING", "LIMIT", "LOCALTIME", + "LOCALTIMESTAMP", "NEW", "NOT", "NULL", "OFF", "OFFSET", "OLD", "ON", "ONLY", "OR", "ORDER", + "PLACING", "PRIMARY", "REFERENCES", "RETURNING", "SELECT", "SESSION_USER", "SOME", "SYMMETRIC", + "TABLE", "THEN", "TO", "TRAILING", "UNION", "UNIQUE", "USER", "USING", "WHEN", "WHERE", "FALSE", + "TRUE", "AUTHORIZATION", "BETWEEN", "BINARY", "CROSS", "FREEZE", "FULL", "ILIKE", "INNER", "IS", + "ISNULL", "JOIN", "LEFT", "LIKE", "NATURAL", "NOTNULL", "OUTER", "OVERLAPS", "RIGHT", "SIMILAR", + "VERBOSE"); + + + public boolean isReserved(String name) { + return RESERVED_WORDS.contains(name); + } + +} Property changes on: artemis/trunk/jiemamy-dialect-postgresql/src/main/java/org/jiemamy/dialect/postgresql/PostgresqlReservedWordsChecker.java ___________________________________________________________________ Added: svn:mime-type + text/plain Modified: artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99IdentifierValidator.java =================================================================== --- artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99IdentifierValidator.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99IdentifierValidator.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -22,6 +22,7 @@ /** * 標準SQL99用 識別子バリデータ。 + * * @author daisuke */ public class Sql99IdentifierValidator extends AbstractIdentifierValidator { @@ -30,7 +31,7 @@ * インスタンスを生成する。 */ public Sql99IdentifierValidator() { - super("^[09-a-zA-Z]$", new Sql99ReservedWords()); + super("^[09-a-zA-Z]$", new Sql99ReservedWordsChecker()); } } Deleted: artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWords.java =================================================================== --- artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWords.java 2009-04-18 18:11:22 UTC (rev 3323) +++ artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWords.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -1,39 +0,0 @@ -/* - * Copyright 2007-2009 Jiemamy Project and the Others. - * Created on 2008/08/24 - * - * 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.dialect.sql99; - -import java.util.Arrays; -import java.util.List; - -import org.jiemamy.dialect.internal.ReservedWordsProvider; - -/** - * SQL99の予約語を提供するクラス。 - * @author daisuke - */ -public class Sql99ReservedWords implements ReservedWordsProvider { - - private static final List<String> RESERVED_WORDS = Arrays.asList("FOO", "BAR"); - - - public boolean isReserved(String name) { - return RESERVED_WORDS.contains(name); - } - -} Copied: artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWordsChecker.java (from rev 3321, artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWords.java) =================================================================== --- artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWordsChecker.java (rev 0) +++ artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWordsChecker.java 2009-04-19 00:35:08 UTC (rev 3324) @@ -0,0 +1,40 @@ +/* + * Copyright 2007-2009 Jiemamy Project and the Others. + * Created on 2008/08/24 + * + * 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.dialect.sql99; + +import java.util.Arrays; +import java.util.List; + +import org.jiemamy.dialect.internal.ReservedWordsChecker; + +/** + * SQL99の予約語をチェックするクラス。 + * + * @author daisuke + */ +public class Sql99ReservedWordsChecker implements ReservedWordsChecker { + + private static final List<String> RESERVED_WORDS = Arrays.asList("FOO", "BAR"); + + + public boolean isReserved(String name) { + return RESERVED_WORDS.contains(name); + } + +} Property changes on: artemis/trunk/jiemamy-dialect-sql99/src/main/java/org/jiemamy/dialect/sql99/Sql99ReservedWordsChecker.java ___________________________________________________________________ Added: svn:mime-type + text/plain