/* Copyright (c) 2001-2008, The HSQL Development Group
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* Neither the name of the HSQL Development Group nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG,
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.hsqldb.util;
import java.util.Map;
import java.util.HashMap;
/* $Id: SqltoolRB.java,v 1.10 2008/03/15 13:53:47 fredt Exp $ */
/**
* Resource Bundle for SqlTool and associated classes.
*
* Purpose of this class is to wrap a RefCapablePropertyResourceBundle to
* reliably detect any possible use of a missing property key as soon as
* this class is clinitted.
* The reason for this is to allow us developers to detect all such errors
* before end-users ever use this class.
*
* IMPORTANT: To add a new ResourceBundle element, add two new lines, one
* like <PRE>
* static public final int NEWKEYID = keyCounter++;
* </PRE> and one line <PRE>
* new Integer(KEY2), "key2",
* </PRE>
* Both should be inserted right after all of the other lines of the same type.
* NEWKEYID is obviously a new constant which you will use in calling code
* like SqltoolRB.NEWKEYID.
*/
public class SqltoolRB extends ValidatingResourceBundle {
/**
* Does a quick test of this class.
*/
static public void main(String[] sa) {
SqltoolRB rb1 = new SqltoolRB();
SqltoolRB rb2 = new SqltoolRB();
String[] testParams = { "one", "two", "three" };
rb1.validate();
rb2.validate();
System.err.println("rb1 size = " + rb1.getSize());
System.err.println("rb2 size = " + rb2.getSize());
rb1.setMissingPosValueBehavior(
ValidatingResourceBundle.EMPTYSTRING_BEHAVIOR);
rb2.setMissingPosValueBehavior(
ValidatingResourceBundle.NOOP_BEHAVIOR);
/*
rb1.setMissingPropertyBehavior(
ValidatingResourceBundle.THROW_BEHAVIOR);
System.out.println("("
+ rb1.getExpandedString(SqltoolRB.JDBC_ESTABLISHED) + ')');
*/
System.out.println("First, with no positional parameters set...");
System.out.println("JDBC_ESTABLISHED String w/ EMPTYSTRING_BEHAVIOR: "
+ rb1.getString(SqltoolRB.JDBC_ESTABLISHED));
System.out.println("JDBC_ESTABLISHED String w/ NOOP_BEHAVIOR: "
+ rb2.getString(SqltoolRB.JDBC_ESTABLISHED));
System.out.println("Now, with no positional values set...");
System.out.println("JDBC_ESTABLISHED String w/ EMPTYSTRING_BEHAVIOR: "
+ rb1.getString(SqltoolRB.JDBC_ESTABLISHED, new String[] {}));
System.out.println("JDBC_ESTABLISHED String w/ NOOP_BEHAVIOR: "
+ rb2.getString(SqltoolRB.JDBC_ESTABLISHED, new String[] {}));
System.out.println();
System.out.println("Now, with positional params set to one/two/three");
System.out.println("JDBC_ESTABLISHED String w/ EMPTYSTRING_BEHAVIOR: "
+ rb1.getString(SqltoolRB.JDBC_ESTABLISHED, testParams));
System.out.println("JDBC_ESTABLISHED String w/ NOOP_BEHAVIOR: "
+ rb2.getString(SqltoolRB.JDBC_ESTABLISHED, testParams));
rb1.setMissingPosValueBehavior(
RefCapablePropertyResourceBundle.THROW_BEHAVIOR);
System.out.println("JDBC_ESTABLISHED String w/ THROW_BEHAVIOR: "
+ rb1.getString(SqltoolRB.JDBC_ESTABLISHED, testParams));
System.out.println();
System.out.println("Now, with no parameters set");
System.out.println("JDBC_ESTABLISHED String w/ THROW_BEHAVIOR: ");
System.out.println(
rb1.getString(SqltoolRB.JDBC_ESTABLISHED, new String[] {}));
}
static private int keyCounter = 0;
static public final int SQLTOOL_SYNTAX = keyCounter++;
static public final int PASSWORDFOR_PROMPT = keyCounter++;
static public final int SQLTOOL_VARSET_BADFORMAT = keyCounter++;
static public final int SQLTOOL_ABORTCONTINUE_MUTUALLYEXCLUSIVE =
keyCounter++;
static public final int SQLTEMPFILE_FAIL = keyCounter++;
static public final int RCDATA_INLINEURL_MISSING = keyCounter++;
static public final int RCDATA_INLINE_EXTRAVARS = keyCounter++;
static public final int RCDATA_INLINEUSERNAME_MISSING = keyCounter++;
static public final int RCDATA_PASSWORD_VISIBLE = keyCounter++;
static public final int PASSWORD_READFAIL = keyCounter++;
static public final int CONNECTION_FAIL = keyCounter++;
static public final int RCDATA_GENFROMVALUES_FAIL = keyCounter++;
static public final int CONNDATA_RETRIEVAL_FAIL = keyCounter++;
static public final int JDBC_ESTABLISHED = keyCounter++;
static public final int TEMPFILE_REMOVAL_FAIL = keyCounter++;
static public final int SQLFILE_BANNER = keyCounter++;
static public final int BUFFER_HELP = keyCounter++;
static public final int SPECIAL_HELP = keyCounter++;
static public final int PL_HELP = keyCounter++;
static public final int DSV_OPTIONS = keyCounter++;
static public final int D_OPTIONS = keyCounter++;
static public final int RAW_LEADIN = keyCounter++;
static public final int ERRORAT = keyCounter++;
static public final int REJECTREPORT_TOP = keyCounter++;
static public final int REJECTREPORT_ROW = keyCounter++;
static public final int REJECTREPORT_BOTTOM = keyCounter++;
static public final int SQLFILE_READFAIL = keyCounter++;
static public final int RAWMODE_PROMPT = keyCounter++;
static public final int RAW_MOVEDTOBUFFER = keyCounter++;
static public final int INPUT_MOVEDTOBUFFER = keyCounter++;
static public final int SQLSTATEMENT_EMPTY = keyCounter++;
static public final int CAUSEREPORT = keyCounter++;
static public final int BREAK_UNSATISFIED = keyCounter++;
static public final int CONTINUE_UNSATISFIED = keyCounter++;
static public final int PRIMARYINPUT_ACCESSFAIL = keyCounter++;
static public final int INPUT_UNTERMINATED = keyCounter++;
static public final int PLVAR_SET_INCOMPLETE = keyCounter++;
static public final int ABORTING = keyCounter++;
static public final int INPUTREADER_CLOSEFAIL = keyCounter++;
static public final int ROLLINGBACK = keyCounter++;
static public final int SPECIAL_UNSPECIFIED = keyCounter++;
static public final int BUFHIST_UNSPECIFIED = keyCounter++;
static public final int BUFFER_EXECUTING = keyCounter++;
static public final int NOBUFFER_YET = keyCounter++;
static public final int COMMANDNUM_MALFORMAT = keyCounter++;
static public final int BUFFER_RESTORED = keyCounter++;
static public final int SUBSTITUTION_MALFORMAT = keyCounter++;
static public final int SUBSTITUTION_NOMATCH = keyCounter++;
static public final int SUBSTITUTION_SYNTAX = keyCounter++;
static public final int BUFFER_UNKNOWN = keyCounter++;
static public final int SPECIAL_EXTRACHARS = keyCounter++;
static public final int BUFFER_EXTRACHARS = keyCounter++;
static public final int SPECIAL_MALFORMAT = keyCounter++;
static public final int HTML_MODE = keyCounter++;
static public final int DSV_TARGETFILE_DEMAND = keyCounter++;
static public final int FILE_WROTECHARS = keyCounter++;
static public final int FILE_WRITEFAIL = keyCounter++;
static public final int SPECIAL_D_LIKE = keyCounter++;
static public final int OUTPUTFILE_NONETOCLOSE = keyCounter++;
static public final int OUTPUTFILE_REOPENING = keyCounter++;
static public final int OUTPUTFILE_HEADER = keyCounter++;
static public final int DESTFILE_DEMAND = keyCounter++;
static public final int BUFFER_EMPTY = keyCounter++;
static public final int FILE_APPENDFAIL = keyCounter++;
static public final int SQLFILE_NAME_DEMAND = keyCounter++;
static public final int SQLFILE_EXECUTE_FAIL = keyCounter++;
static public final int A_SETTING = keyCounter++;
static public final int COMMITTED = keyCounter++;
static public final int SPECIAL_B_MALFORMAT = keyCounter++;
static public final int BINARY_LOADEDBYTESINTO = keyCounter++;
static public final int BINARY_FILEFAIL = keyCounter++;
static public final int C_SETTING = keyCounter++;
static public final int BANG_INCOMPLETE = keyCounter++;
static public final int BANG_COMMAND_FAIL = keyCounter++;
static public final int SPECIAL_UNKNOWN = keyCounter++;
static public final int DSV_M_SYNTAX = keyCounter++;
static public final int DSV_X_SYNTAX = keyCounter++;
static public final int RAW_EMPTY = keyCounter++;
static public final int DSV_NOCOLSLEFT = keyCounter++;
static public final int DSV_SKIPCOLS_MISSING = keyCounter++;
static public final int PLALIAS_MALFORMAT = keyCounter++;
static public final int PLVAR_UNDEFINED = keyCounter++;
static public final int SYSPROP_EMPTY = keyCounter++;
static public final int SYSPROP_UNTERMINATED = keyCounter++;
static public final int SYSPROP_UNDEFINED = keyCounter++;
static public final int VAR_INFINITE = keyCounter++;
static public final int PLVAR_NAMEEMPTY = keyCounter++;
static public final int PLVAR_UNTERMINATED = keyCounter++;
static public final int PL_MALFORMAT = keyCounter++;
static public final int PL_EXPANSIONMODE = keyCounter++;
static public final int END_NOBLOCK = keyCounter++;
static public final int CONTINUE_SYNTAX = keyCounter++;
static public final int BREAK_SYNTAX = keyCounter++;
static public final int PL_LIST_PARENS = keyCounter++;
static public final int PL_LIST_LENGTHS = keyCounter++;
static public final int DUMPLOAD_MALFORMAT = keyCounter++;
static public final int PLVAR_NOCOLON = keyCounter++;
static public final int PLVAR_TILDEDASH_NOMOREARGS = keyCounter++;
static public final int DUMPLOAD_FAIL = keyCounter++;
static public final int PREPARE_MALFORMAT = keyCounter++;
static public final int FOREACH_MALFORMAT = keyCounter++;
static public final int PL_TEMPFILE_FAIL = keyCounter++;
static public final int PL_BLOCK_FAIL = keyCounter++;
static public final int IFWHILE_MALFORMAT = keyCounter++;
static public final int IF_MALFORMAT = keyCounter++;
static public final int WHILE_MALFORMAT = keyCounter++;
static public final int PL_UNKNOWN = keyCounter++;
static public final int PL_BLOCK_UNTERMINATED = keyCounter++;
static public final int END_SYNTAX = keyCounter++;
static public final int VENDOR_ORACLE_DS = keyCounter++;
static public final int VENDOR_DERBY_DR = keyCounter++;
static public final int VENDOR_NOSUP_D = keyCounter++;
static public final int VENDOR_DERBY_DU = keyCounter++;
static public final int SPECIAL_D_UNKNOWN = keyCounter++;
static public final int METADATA_FETCH_FAIL = keyCounter++;
static public final int METADATA_FETCH_FAILFOR = keyCounter++;
static public final int PREPARE_DEMANDQM = keyCounter++;
static public final int BINBUFFER_EMPTY = keyCounter++;
static public final int VENDOR_NOSUP_SYSSCHEMAS = keyCounter++;
static public final int NORESULT = keyCounter++;
static public final int DSV_BINCOL = keyCounter++;
static public final int BINBUF_WRITE = keyCounter++;
static public final int ROWS_FETCHED = keyCounter++;
static public final int ROWS_FETCHED_DSV = keyCounter++;
static public final int ROW_UPDATE_SINGULAR = keyCounter++;
static public final int ROW_UPDATE_MULTIPLE = keyCounter++;
static public final int HISTORY_UNAVAILABLE = keyCounter++;
static public final int HISTORY_NONE = keyCounter++;
static public final int EDITBUFFER_CONTENTS = keyCounter++;
static public final int BUFFER_INSTRUCTIONS = keyCounter++;
static public final int HISTORY_NUMBER_REQ = keyCounter++;
static public final int HISTORY_BACKTO = keyCounter++;
static public final int HISTORY_UPTO = keyCounter++;
static public final int HISTORY_BACK = keyCounter++;
static public final int DESCRIBE_TABLE_NAME = keyCounter++;
static public final int DESCRIBE_TABLE_DATATYPE = keyCounter++;
static public final int DESCRIBE_TABLE_WIDTH = keyCounter++;
static public final int DESCRIBE_TABLE_NONULLS = keyCounter++;
static public final int LOGICAL_UNRECOGNIZED = keyCounter++;
static public final int READ_TOOBIG = keyCounter++;
static public final int READ_PARTIAL = keyCounter++;
static public final int READ_CONVERTFAIL = keyCounter++;
static public final int DSV_COLDELIM_PRESENT = keyCounter++;
static public final int DSV_ROWDELIM_PRESENT = keyCounter++;
static public final int DSV_NULLREP_PRESENT = keyCounter++;
static public final int DSV_CONSTCOLS_NULLCOL = keyCounter++;
static public final int FILE_READFAIL = keyCounter++;
static public final int INPUTFILE_CLOSEFAIL = keyCounter++;
static public final int DSV_HEADER_NONE = keyCounter++;
static public final int DSV_HEADER_NOSWITCHTARG = keyCounter++;
static public final int DSV_HEADER_NOSWITCHMATCH = keyCounter++;
static public final int DSV_HEADER_NONSWITCHED = keyCounter++;
static public final int DSV_NOCOLHEADER = keyCounter++;
static public final int DSV_METADATA_MISMATCH = keyCounter++;
static public final int QUERY_METADATAFAIL = keyCounter++;
static public final int DSV_REJECTFILE_SETUPFAIL = keyCounter++;
static public final int DSV_REJECTREPORT_SETUPFAIL = keyCounter++;
static public final int NONE = keyCounter++;
static public final int INSERTION_PREPAREFAIL = keyCounter++;
static public final int DSV_HEADER_MATCHERNONHEAD = keyCounter++;
static public final int DSV_COLCOUNT_MISMATCH = keyCounter++;
static public final int DSV_INSERTCOL_MISMATCH = keyCounter++;
static public final int TIME_BAD = keyCounter++;
static public final int BOOLEAN_BAD = keyCounter++;
static public final int INPUTREC_MODIFIED = keyCounter++;
static public final int DSV_RECIN_FAIL = keyCounter++;
static public final int DSV_IMPORT_SUMMARY = keyCounter++;
static public final int INSERTIONS_NOTCOMMITTED = keyCounter++;
static public final int AUTOCOMMIT_FETCHFAIL = keyCounter++;
static public final int DSV_REJECTFILE_PURGEFAIL = keyCounter++;
static public final int DSV_REJECTREPORT_PURGEFAIL = keyCounter++;
static public final int EDIT_MALFORMAT = keyCounter++;
private static Object[] memberKeyArray = new Object[] {
/* With Java 5, can use auto-boxing and get rid of all of the
* Integer instantiations below.*/
// SqlTool class, file references:
new Integer(SQLTOOL_SYNTAX), "SqlTool.syntax",
// SqlTool inline properties:
new Integer(PASSWORDFOR_PROMPT), "passwordFor.prompt",
new Integer(SQLTOOL_VARSET_BADFORMAT), "SqlTool.varset.badformat",
new Integer(SQLTOOL_ABORTCONTINUE_MUTUALLYEXCLUSIVE),
"SqlTool.abort_continue.mutuallyexclusive",
new Integer(SQLTEMPFILE_FAIL), "sqltempfile.fail",
new Integer(RCDATA_INLINEURL_MISSING), "rcdata.inlineurl.missing",
new Integer(RCDATA_INLINE_EXTRAVARS), "rcdata.inline.extravars",
new Integer(RCDATA_INLINEUSERNAME_MISSING),
"rcdata.inlineusername.missing",
new Integer(RCDATA_PASSWORD_VISIBLE), "rcdata.password.visible",
new Integer(PASSWORD_READFAIL), "password.readfail",
new Integer(CONNECTION_FAIL), "connection.fail",
new Integer(RCDATA_GENFROMVALUES_FAIL),
"rcdata.genfromvalues.fail",
new Integer(CONNDATA_RETRIEVAL_FAIL), "conndata.retrieval.fail",
new Integer(JDBC_ESTABLISHED), "jdbc.established",
new Integer(TEMPFILE_REMOVAL_FAIL), "tempfile.removal.fail",
// SqlFile class, file references:
new Integer(SQLFILE_BANNER), "SqlFile.banner",
new Integer(BUFFER_HELP), "buffer.help",
new Integer(SPECIAL_HELP), "special.help",
new Integer(PL_HELP), "pl.help",
new Integer(DSV_OPTIONS), "dsv.options",
new Integer(D_OPTIONS), "d.options",
new Integer(RAW_LEADIN), "raw.leadin",
new Integer(ERRORAT), "errorat",
new Integer(REJECTREPORT_TOP), "rejectreport.top",
new Integer(REJECTREPORT_ROW), "rejectreport.row",
new Integer(REJECTREPORT_BOTTOM), "rejectreport.bottom",
// SqlFile inline properties:
new Integer(SQLFILE_READFAIL), "sqlfile.readfail",
new Integer(RAWMODE_PROMPT), "rawmode.prompt",
new Integer(RAW_MOVEDTOBUFFER), "raw.movedtobuffer",
new Integer(INPUT_MOVEDTOBUFFER), "input.movedtobuffer",
new Integer(SQLSTATEMENT_EMPTY), "sqlstatement.empty",
new Integer(CAUSEREPORT), "causereport",
new Integer(BREAK_UNSATISFIED), "break.unsatisfied",
new Integer(CONTINUE_UNSATISFIED), "continue.unsatisfied",
new Integer(PRIMARYINPUT_ACCESSFAIL), "primaryinput.accessfail",
new Integer(INPUT_UNTERMINATED), "input.unterminated",
new Integer(PLVAR_SET_INCOMPLETE), "plvar.set.incomplete",
new Integer(ABORTING), "aborting",
new Integer(INPUTREADER_CLOSEFAIL), "inputreader.closefail",
new Integer(ROLLINGBACK), "rollingback",
new Integer(SPECIAL_UNSPECIFIED), "special.unspecified",
new Integer(BUFHIST_UNSPECIFIED), "bufhist.unspecified",
new Integer(BUFFER_EXECUTING), "buffer.executing",
new Integer(NOBUFFER_YET), "nobuffer.yet",
new Integer(COMMANDNUM_MALFORMAT), "commandnum.malformat",
new Integer(BUFFER_RESTORED), "buffer.restored",
new Integer(SUBSTITUTION_MALFORMAT), "substitution.malformat",
new Integer(SUBSTITUTION_NOMATCH), "substitution.nomatch",
new Integer(SUBSTITUTION_SYNTAX), "substitution.syntax",
new Integer(BUFFER_UNKNOWN), "buffer.unknown",
new Integer(SPECIAL_EXTRACHARS), "special.extrachars",
new Integer(BUFFER_EXTRACHARS), "buffer.extrachars",
new Integer(SPECIAL_MALFORMAT), "special.malformat",
new Integer(HTML_MODE), "html.mode",
new Integer(DSV_TARGETFILE_DEMAND), "dsv.targetfile.demand",
new Integer(FILE_WROTECHARS), "file.wrotechars",
new Integer(FILE_WRITEFAIL), "file.writefail",
new Integer(SPECIAL_D_LIKE), "special.d.like",
new Integer(OUTPUTFILE_NONETOCLOSE), "outputfile.nonetoclose",
new Integer(OUTPUTFILE_REOPENING), "outputfile.reopening",
new Integer(OUTPUTFILE_HEADER), "outputfile.header",
new Integer(DESTFILE_DEMAND), "destfile.demand",
new Integer(BUFFER_EMPTY), "buffer.empty",
new Integer(FILE_APPENDFAIL), "file.appendfail",
new Integer(SQLFILE_NAME_DEMAND), "sqlfile.name.demand",
new Integer(SQLFILE_EXECUTE_FAIL), "sqlfile.execute.fail",
new Integer(A_SETTING), "a.setting",
new Integer(COMMITTED), "committed",
new Integer(SPECIAL_B_MALFORMAT), "special.b.malformat",
new Integer(BINARY_LOADEDBYTESINTO), "binary.loadedbytesinto",
new Integer(BINARY_FILEFAIL), "binary.filefail",
new Integer(C_SETTING), "c.setting",
new Integer(BANG_INCOMPLETE), "bang.incomplete",
new Integer(BANG_COMMAND_FAIL), "bang.command.fail",
new Integer(SPECIAL_UNKNOWN), "special.unknown",
new Integer(DSV_M_SYNTAX), "dsv.m.syntax",
new Integer(DSV_X_SYNTAX), "dsv.x.syntax",
new Integer(RAW_EMPTY), "raw.empty",
new Integer(DSV_NOCOLSLEFT), "dsv.nocolsleft",
new Integer(DSV_SKIPCOLS_MISSING), "dsv.skipcols.missing",
new Integer(PLALIAS_MALFORMAT), "plalias.malformat",
new Integer(PLVAR_UNDEFINED), "plvar.undefined",
new Integer(SYSPROP_EMPTY), "sysprop.empty",
new Integer(SYSPROP_UNTERMINATED), "sysprop.unterminated",
new Integer(SYSPROP_UNDEFINED), "sysprop.undefined",
new Integer(VAR_INFINITE), "var.infinite",
new Integer(PLVAR_NAMEEMPTY), "plvar.nameempty",
new Integer(PLVAR_UNTERMINATED), "plvar.unterminated",
new Integer(PL_MALFORMAT), "pl.malformat",
new Integer(PL_EXPANSIONMODE), "pl.expansionmode",
new Integer(END_NOBLOCK), "end.noblock",
new Integer(CONTINUE_SYNTAX), "continue.syntax",
new Integer(BREAK_SYNTAX), "break.syntax",
new Integer(PL_LIST_PARENS), "pl.list.parens",
new Integer(PL_LIST_LENGTHS), "pl.list.lengths",
new Integer(DUMPLOAD_MALFORMAT), "dumpload.malformat",
new Integer(PLVAR_NOCOLON), "plvar.nocolon",
new Integer(PLVAR_TILDEDASH_NOMOREARGS), "plvar.tildedash.nomoreargs",
new Integer(DUMPLOAD_FAIL), "dumpload.fail",
new Integer(PREPARE_MALFORMAT), "prepare.malformat",
new Integer(FOREACH_MALFORMAT), "foreach.malformat",
new Integer(PL_TEMPFILE_FAIL), "pl.tempfile.fail",
new Integer(PL_BLOCK_FAIL), "pl.block.fail",
new Integer(IFWHILE_MALFORMAT), "ifwhile.malformat",
new Integer(IF_MALFORMAT), "if.malformat",
new Integer(WHILE_MALFORMAT), "while.malformat",
new Integer(PL_UNKNOWN), "pl.unknown",
new Integer(PL_BLOCK_UNTERMINATED), "pl.block.unterminated",
new Integer(END_SYNTAX), "end.syntax",
new Integer(VENDOR_ORACLE_DS), "vendor.oracle.dS",
new Integer(VENDOR_DERBY_DR), "vendor.derby.dr",
new Integer(VENDOR_NOSUP_D), "vendor.nosup.d",
new Integer(VENDOR_DERBY_DU), "vendor.derby.du",
new Integer(SPECIAL_D_UNKNOWN), "special.d.unknown",
new Integer(METADATA_FETCH_FAIL), "metadata.fetch.fail",
new Integer(METADATA_FETCH_FAILFOR), "metadata.fetch.failfor",
new Integer(PREPARE_DEMANDQM), "prepare.demandqm",
new Integer(BINBUFFER_EMPTY), "binbuffer.empty",
new Integer(VENDOR_NOSUP_SYSSCHEMAS), "vendor.nosup.sysschemas",
new Integer(NORESULT), "noresult",
new Integer(DSV_BINCOL), "dsv.bincol",
new Integer(BINBUF_WRITE), "binbuf.write",
new Integer(ROWS_FETCHED), "rows.fetched",
new Integer(ROWS_FETCHED_DSV), "rows.fetched.dsv",
new Integer(ROW_UPDATE_SINGULAR), "row.update.singular",
new Integer(ROW_UPDATE_MULTIPLE), "row.update.multiple",
new Integer(HISTORY_UNAVAILABLE), "history.unavailable",
new Integer(HISTORY_NONE), "history.none",
new Integer(EDITBUFFER_CONTENTS), "editbuffer.contents",
new Integer(BUFFER_INSTRUCTIONS), "buffer.instructions",
new Integer(HISTORY_NUMBER_REQ), "history.number.req",
new Integer(HISTORY_BACKTO), "history.backto",
new Integer(HISTORY_UPTO), "history.upto",
new Integer(HISTORY_BACK), "history.back",
new Integer(DESCRIBE_TABLE_NAME), "describe.table.name",
new Integer(DESCRIBE_TABLE_DATATYPE), "describe.table.datatype",
new Integer(DESCRIBE_TABLE_WIDTH), "describe.table.width",
new Integer(DESCRIBE_TABLE_NONULLS), "describe.table.nonulls",
new Integer(LOGICAL_UNRECOGNIZED), "logical.unrecognized",
new Integer(READ_TOOBIG), "read.toobig",
new Integer(READ_PARTIAL), "read.partial",
new Integer(READ_CONVERTFAIL), "read.convertfail",
new Integer(DSV_COLDELIM_PRESENT), "dsv.coldelim.present",
new Integer(DSV_ROWDELIM_PRESENT), "dsv.rowdelim.present",
new Integer(DSV_NULLREP_PRESENT), "dsv.nullrep.present",
new Integer(DSV_CONSTCOLS_NULLCOL), "dsv.constcols.nullcol",
new Integer(FILE_READFAIL), "file.readfail",
new Integer(INPUTFILE_CLOSEFAIL), "inputfile.closefail",
new Integer(DSV_HEADER_NONE), "dsv.header.none",
new Integer(DSV_HEADER_NOSWITCHTARG), "dsv.header.noswitchtarg",
new Integer(DSV_HEADER_NOSWITCHMATCH), "dsv.header.noswitchmatch",
new Integer(DSV_HEADER_NONSWITCHED), "dsv.header.nonswitched",
new Integer(DSV_NOCOLHEADER), "dsv.nocolheader",
new Integer(DSV_METADATA_MISMATCH), "dsv.metadata.mismatch",
new Integer(QUERY_METADATAFAIL), "query.metadatafail",
new Integer(DSV_REJECTFILE_SETUPFAIL), "dsv.rejectfile.setupfail",
new Integer(DSV_REJECTREPORT_SETUPFAIL), "dsv.rejectreport.setupfail",
new Integer(NONE), "none",
new Integer(INSERTION_PREPAREFAIL), "insertion.preparefail",
new Integer(DSV_HEADER_MATCHERNONHEAD), "dsv.header.matchernonhead",
new Integer(DSV_COLCOUNT_MISMATCH), "dsv.colcount.mismatch",
new Integer(DSV_INSERTCOL_MISMATCH), "dsv.insertcol.mismatch",
new Integer(TIME_BAD), "time.bad",
new Integer(BOOLEAN_BAD), "boolean.bad",
new Integer(INPUTREC_MODIFIED), "inputrec.modified",
new Integer(DSV_RECIN_FAIL), "dsv.recin.fail",
new Integer(DSV_IMPORT_SUMMARY), "dsv.import.summary",
new Integer(INSERTIONS_NOTCOMMITTED), "insertions.notcommitted",
new Integer(AUTOCOMMIT_FETCHFAIL), "autocommit.fetchfail",
new Integer(DSV_REJECTFILE_PURGEFAIL), "dsv.rejectfile.purgefail",
new Integer(DSV_REJECTREPORT_PURGEFAIL), "dsv.rejectreport.purgefail",
new Integer(EDIT_MALFORMAT), "edit.malformat",
};
private Map keyIdToString = new HashMap();
protected Map getKeyIdToString() {
return keyIdToString;
}
public SqltoolRB() {
super("org.hsqldb.util.sqltool");
if (memberKeyArray == null)
throw new RuntimeException("'static memberKeyArray not set");
for (int i = 0; i < memberKeyArray.length; i += 2) {
keyIdToString.put(memberKeyArray[i], memberKeyArray[i+1]);
}
}
static {
if (memberKeyArray == null)
throw new RuntimeException("'static memberKeyArray not set");
if (memberKeyArray.length % 2 != 0)
throw new RuntimeException("memberKeyArray has an odd length");
for (int i = 0; i < memberKeyArray.length; i += 2) {
if (!(memberKeyArray[i] instanceof Integer))
throw new RuntimeException("Element #" + i + " ("
+ ((i - 1 < 0) ? "first item"
: ("after item \"" + memberKeyArray[i-1] + "\""))
+ ") is a " + memberKeyArray[i].getClass().getName()
+ ", not an Integer, in memberKeyArray in class "
+ SqltoolRB.class.getName());
if (!(memberKeyArray[i+1] instanceof String))
throw new RuntimeException("Element #" + (i+1) + " ("
+ ((i - 2 < 0) ? "first item"
: ("after item \"" + memberKeyArray[i-1] + "\""))
+ ") is a " + memberKeyArray[i+1].getClass().getName()
+ ", not a String, in memberKeyArray in class "
+ SqltoolRB.class.getName());
if (((Integer) memberKeyArray[i]).intValue() != i/2)
throw new RuntimeException("Element #" + i
+ " is wrong constant for item " + memberKeyArray[i+1]
+ " in memberKeyArray in class "
+ SqltoolRB.class.getName());
}
/* DEBUG
System.err.println("Initialized keyIdToString map with "
+ keyIdToString.size() + " mappings");
*/
}
}