📄 sqltoolrb.java
字号:
/* 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++;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -