Index: sqleditor/nbproject/project.xml
===================================================================
RCS file: /cvs/db/sqleditor/nbproject/project.xml,v
retrieving revision 1.2.22.2
diff -u -r1.2.22.2 project.xml
--- sqleditor/nbproject/project.xml 17 Apr 2006 18:45:25 -0000 1.2.22.2
+++ sqleditor/nbproject/project.xml 13 Jun 2006 17:58:25 -0000
@@ -35,6 +35,14 @@
+ org.netbeans.modules.dbapi
+
+
+
+ 1.2
+
+
+
org.netbeans.modules.editor
Index: sqleditor/src/org/netbeans/modules/db/sql/editor/Bundle.properties
===================================================================
RCS file: /cvs/db/sqleditor/src/org/netbeans/modules/db/sql/editor/Bundle.properties,v
retrieving revision 1.2.2.1.2.1
diff -u -r1.2.2.1.2.1 Bundle.properties
--- sqleditor/src/org/netbeans/modules/db/sql/editor/Bundle.properties 16 May 2006 12:06:16 -0000 1.2.2.1.2.1
+++ sqleditor/src/org/netbeans/modules/db/sql/editor/Bundle.properties 13 Jun 2006 17:58:25 -0000
@@ -20,72 +20,6 @@
#PARTI18N - only localize "SQL Command" and do not add anything after ".sql"
LBL_SQLCommandFileName=SQL Command {0}.sql
-#SQL99 list of reserved and non-reserved keywords
-LIST_SQLKeywords=ABS,\
-ABSOLUTE,ACTION,ADA,ADD,ADMIN,AFTER,AGGREGATE,\
-ALIAS,ALL,ALLOCATE,ALTER,AND,ANY,ARE,\
-ARRAY,AS,ASC,ASENSITIVE,ASSERTION,ASSIGNMENT,ASYMMETRIC,\
-AT,ATOMIC,AUTHORIZATION,AVG,BEFORE,BEGIN,BETWEEN,\
-BINARY,BIT,BITVAR,BIT_LENGTH,BLOB,BOOLEAN,BOTH,\
-BREADTH,BY,C,CALL,CALLED,CARDINALITY,CASCADE,\
-CASCADED,CASE,CAST,CATALOG,CATALOG_NAME,CHAIN,CHAR,\
-CHARACTER,CHARACTER_LENGTH,CHARACTER_SET_CATALOG,CHARACTER_SET_NAME,CHARACTER_SET_SCHEMA,CHAR_LENGTH,CHECK,\
-CHECKED,CLASS,CLASS_ORIGIN,CLOB,CLOSE,COALESCE,COBOL,\
-COLLATE,COLLATION,COLLATION_CATALOG,COLLATION_NAME,COLLATION_SCHEMA,COLUMN,COLUMN_NAME,\
-COMMAND_FUNCTION,COMMAND_FUNCTION_CODE,COMMIT,COMMITTED,COMPLETION,CONDITION_NUMBER,CONNECT,\
-CONNECTION,CONNECTION_NAME,CONSTRAINT,CONSTRAINTS,CONSTRAINT_CATALOG,CONSTRAINT_NAME,CONSTRAINT_SCHEMA,\
-CONSTRUCTOR,CONTAINS,CONTINUE,CONVERT,CORRESPONDING,COUNT,CREATE,\
-CROSS,CUBE,CURRENT,CURRENT_DATE,CURRENT_PATH,CURRENT_ROLE,CURRENT_TIME,\
-CURRENT_TIMESTAMP,CURRENT_USER,CURSOR,CURSOR_NAME,CYCLE,DATA,DATE,\
-DATETIME_INTERVAL_CODE,DATETIME_INTERVAL_PRECISION,DAY,DEALLOCATE,DEC,DECIMAL,DECLARE,\
-DEFAULT,DEFERRABLE,DEFERRED,DEFINED,DEFINER,DELETE,DEPTH,\
-DEREF,DESC,DESCRIBE,DESCRIPTOR,DESTROY,DESTRUCTOR,DETERMINISTIC,\
-DIAGNOSTICS,DICTIONARY,DISCONNECT,DISPATCH,DISTINCT,DOMAIN,DOUBLE,\
-DROP,DYNAMIC,DYNAMIC_FUNCTION,DYNAMIC_FUNCTION_CODE,EACH,ELSE,END,\
-END-EXEC,EQUALS,ESCAPE,EVERY,EXCEPT,EXCEPTION,EXEC,\
-EXECUTE,EXISTING,EXISTS,EXTERNAL,EXTRACT,FALSE,FETCH,\
-FINAL,FIRST,FLOAT,FOR,FOREIGN,FORTRAN,FOUND,\
-FREE,FROM,FULL,FUNCTION,G,GENERAL,GENERATED,\
-GET,GLOBAL,GO,GOTO,GRANT,GRANTED,GROUP,\
-GROUPING,HAVING,HIERARCHY,HOLD,HOST,HOUR,IDENTITY,\
-IF,IGNORE,IMMEDIATE,IMPLEMENTATION,IN,INDICATOR,INFIX,INITIALIZE,\
-INITIALLY,INNER,INOUT,INPUT,INSENSITIVE,INSERT,INSTANCE,\
-INSTANTIABLE,INT,INTEGER,INTERSECT,INTERVAL,INTO,INVOKER,\
-IS,ISOLATION,ITERATE,JOIN,K,KEY,KEY_MEMBER,\
-KEY_TYPE,LANGUAGE,LARGE,LAST,LATERAL,LEADING,LEFT,\
-LENGTH,LESS,LEVEL,LIKE,LIMIT,LOCAL,LOCALTIME,\
-LOCALTIMESTAMP,LOCATOR,LOWER,M,MAP,MATCH,MAX,\
-MESSAGE_LENGTH,MESSAGE_OCTET_LENGTH,MESSAGE_TEXT,METHOD,MIN,MINUTE,MOD,\
-MODIFIES,MODIFY,MODULE,MONTH,MORE,MUMPS,NAME,\
-NAMES,NATIONAL,NATURAL,NCHAR,NCLOB,NEW,NEXT,\
-NO,NONE,NOT,NULL,NULLABLE,NULLIF,NUMBER,\
-NUMERIC,OBJECT,OCTET_LENGTH,OF,OFF,OLD,ON,\
-ONLY,OPEN,OPERATION,OPTION,OPTIONS,OR,ORDER,\
-ORDINALITY,OUT,OUTER,OUTPUT,OVERLAPS,OVERLAY,OVERRIDING,\
-PAD,PARAMETER,PARAMETERS,PARAMETER_MODE,PARAMETER_NAME,PARAMETER_ORDINAL_POSITION,PARAMETER_SPECIFIC_CATALOG,\
-PARAMETER_SPECIFIC_NAME,PARAMETER_SPECIFIC_SCHEMA,PARTIAL,PASCAL,PATH,PLI,POSITION,\
-POSTFIX,PRECISION,PREFIX,PREORDER,PREPARE,PRESERVE,PRIMARY,\
-PRIOR,PRIVILEGES,PROCEDURE,PUBLIC,READ,READS,REAL,\
-RECURSIVE,REF,REFERENCES,REFERENCING,RELATIVE,REPEATABLE,RESTRICT,\
-RESULT,RETURN,RETURNED_LENGTH,RETURNED_OCTET_LENGTH,RETURNED_SQLSTATE,RETURNS,REVOKE,\
-RIGHT,ROLE,ROLLBACK,ROLLUP,ROUTINE,ROUTINE_CATALOG,ROUTINE_NAME,\
-ROUTINE_SCHEMA,ROW,ROWS,ROW_COUNT,SAVEPOINT,SCALE,SCHEMA,\
-SCHEMA_NAME,SCOPE,SCROLL,SEARCH,SECOND,SECTION,SECURITY,\
-SELECT,SELF,SENSITIVE,SEQUENCE,SERIALIZABLE,SERVER_NAME,SESSION,\
-SESSION_USER,SET,SETS,SIMILAR,SIMPLE,SIZE,SMALLINT,\
-SOME,SOURCE,SPACE,SPECIFIC,SPECIFICTYPE,SPECIFIC_NAME,SQL,\
-SQLEXCEPTION,SQLSTATE,SQLWARNING,START,STATE,STATEMENT,STATIC,\
-STRUCTURE,STYLE,SUBCLASS_ORIGIN,SUBLIST,SUBSTRING,SUM,SYMMETRIC,\
-SYSTEM,SYSTEM_USER,TABLE,TABLE_NAME,TEMPORARY,TERMINATE,THAN,\
-THEN,TIME,TIMESTAMP,TIMEZONE_HOUR,TIMEZONE_MINUTE,TO,TRAILING,\
-TRANSACTION,TRANSACTIONS_COMMITTED,TRANSACTIONS_ROLLED_BACK,TRANSACTION_ACTIVE,TRANSFORM,TRANSFORMS,TRANSLATE,\
-TRANSLATION,TREAT,TRIGGER,TRIGGER_CATALOG,TRIGGER_NAME,TRIGGER_SCHEMA,TRIM,\
-TRUE,TYPE,UNCOMMITTED,UNDER,UNION,UNIQUE,UNKNOWN,\
-UNNAMED,UNNEST,UPDATE,UPPER,USAGE,USER,USER_DEFINED_TYPE_CATALOG,\
-USER_DEFINED_TYPE_NAME,USER_DEFINED_TYPE_SCHEMA,USING,VALUE,VALUES,VARCHAR,VARIABLE,\
-VARYING,VIEW,WHEN,WHENEVER,WHERE,WITH,WITHOUT,\
-WORK,WRITE,YEAR,ZONE
-
#options
NAME_coloring_sql-whitespace=White Space
HINT_coloring_sql-whitespace=White Space
Index: sqleditor/src/org/netbeans/modules/db/sql/editor/SQLSyntax.java
===================================================================
RCS file: /cvs/db/sqleditor/src/org/netbeans/modules/db/sql/editor/SQLSyntax.java,v
retrieving revision 1.2.2.1
diff -u -r1.2.2.1 SQLSyntax.java
--- sqleditor/src/org/netbeans/modules/db/sql/editor/SQLSyntax.java 18 Jan 2006 18:57:32 -0000 1.2.2.1
+++ sqleditor/src/org/netbeans/modules/db/sql/editor/SQLSyntax.java 13 Jun 2006 17:58:25 -0000
@@ -15,14 +15,12 @@
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.StringTokenizer;
-import org.netbeans.editor.BaseTokenID;
import org.netbeans.editor.Syntax;
import org.netbeans.editor.TokenID;
-import org.netbeans.editor.Utilities;
+import org.netbeans.modules.db.api.sql.SQLKeywords;
import org.openide.util.NbBundle;
/**
@@ -53,15 +51,6 @@
private static final int ISA_LPAREN = 36; //after (
private static final int ISA_RPAREN = 37; //after )
- /**
- * A hashset of keywords
- */
- private static HashSet keywords = new HashSet();
-
- static {
- populateKeywords();
- }
-
/**
* Creates a new instance of SQLSyntax
*/
@@ -70,44 +59,6 @@
}
/**
- * populates the hashset of keywords from the property in the
- * resource bundle
- */
- private static void populateKeywords() {
- String fullList = NbBundle.getBundle(SQLSyntax.class).getString("LIST_SQLKeywords");
- StringTokenizer st = new StringTokenizer(fullList, ","); // NOI18N
- while(st.hasMoreTokens()) {
- String token = st.nextToken();
- token = token.toUpperCase().trim();
-
- if(!keywords.contains(token)) {
- keywords.add(token);
- }
- }
- }
-
- /**
- * Returns an alphabetically sorted list of strings for the SQL keywords
- */
- public static String[] getKeywordList() {
- String[] keywordArray = new String[keywords.size()];
- ArrayList result = new ArrayList();
-
- Iterator iter = keywords.iterator();
- int index = 0;
- while(iter.hasNext()) {
- String keyword = (String) iter.next();
-
- keywordArray[index] = keyword;
- index++;
- }
-
- Arrays.sort(keywordArray);
-
- return keywordArray;
- }
-
- /**
* Parse the next token
*/
protected TokenID parseToken() {
@@ -431,9 +382,8 @@
*/
public TokenID matchKeyword(char[] buffer, int offset, int len) {
String keywordCandidate = new String(buffer, offset, len);
- keywordCandidate = keywordCandidate.toUpperCase();
- if(keywords.contains(keywordCandidate)) {
+ if (SQLKeywords.isSQL99Keyword(keywordCandidate)) {
return SQLTokenContext.KEYWORD;
}