You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ka...@apache.org on 2009/06/30 13:22:48 UTC
svn commit: r789684 - in /db/derby/code/trunk/java:
client/org/apache/derby/client/am/ client/org/apache/derby/jdbc/
engine/org/apache/derby/iapi/types/ engine/org/apache/derby/impl/sql/compile/
Author: kahatlen
Date: Tue Jun 30 11:22:48 2009
New Revision: 789684
URL: http://svn.apache.org/viewvc?rev=789684&view=rev
Log:
DERBY-4293: Mutable public static variables
Made more static variables final and/or private, and created accessor
method to prevent direct access to public static array.
Patch contributed by Sebb <se...@apache.org>.
Modified:
db/derby/code/trunk/java/client/org/apache/derby/client/am/BatchUpdateException.java
db/derby/code/trunk/java/client/org/apache/derby/client/am/Configuration.java
db/derby/code/trunk/java/client/org/apache/derby/client/am/Decimal.java
db/derby/code/trunk/java/client/org/apache/derby/client/am/EncryptionManager.java
db/derby/code/trunk/java/client/org/apache/derby/client/am/Version.java
db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientBaseDataSource.java
db/derby/code/trunk/java/engine/org/apache/derby/iapi/types/JSQLType.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/JavaValueNode.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/MethodCallNode.java
Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/BatchUpdateException.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/BatchUpdateException.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/BatchUpdateException.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/BatchUpdateException.java Tue Jun 30 11:22:48 2009
@@ -32,7 +32,7 @@
* it knows to look there if the message isn't found in the
* shared message bundle.
*/
- private static MessageUtil msgutil_ =
+ private static final MessageUtil msgutil_ =
SqlException.getMessageUtil();
public BatchUpdateException(LogWriter logWriter, ClientMessageId msgid,
Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/Configuration.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/Configuration.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/Configuration.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/Configuration.java Tue Jun 30 11:22:48 2009
@@ -42,9 +42,9 @@
public static String traceDirectory__ = null;
public static boolean traceFileAppend__ = false;
- public static String jreLevel = "1.3.0"; // default level if unable to read
- public static int jreLevelMajor = 1;
- public static int jreLevelMinor = 3;
+ public static final String jreLevel;// = "1.3.0"; // default level if unable to read
+ public static final int jreLevelMajor;// = 1;
+ public static final int jreLevelMinor;// = 3;
private Configuration() {
}
@@ -56,7 +56,7 @@
// -------------------------- versioning -------------------------------------
- public static ProductVersionHolder dncProductVersionHolder__;
+ private static ProductVersionHolder dncProductVersionHolder__;
public static ProductVersionHolder getProductVersionHolder() {
return dncProductVersionHolder__;
@@ -73,9 +73,9 @@
public final static byte[] dncPackageConsistencyToken =
{0x53, 0x59, 0x53, 0x4c, 0x56, 0x4c, 0x30, 0x31};
- // We will not set packagge VERSION in the initial release.
+ // We will not set package VERSION in the initial release.
// If we have to change the package version in the future then we can.
- public static String dncPackageVersion = null;
+ public static final String dncPackageVersion = null;
// for Driver.jdbcCompliant()
public final static boolean jdbcCompliant = true;
@@ -130,7 +130,7 @@
// -----------------------Load resource bundles for the driver asap-----------
- private static final String packageNameForDNC = "org.apache.derby.client";
+ private static final String packageNameForDNC = "org.apache.derby.client"; // NOTUSED
public static SqlException exceptionsOnLoadResources = null; // used by ClientDriver to accumulate load exceptions
@@ -140,12 +140,17 @@
} catch (SqlException e) {
exceptionsOnLoadResources = e;
}
+ String _jreLevel;
try {
- jreLevel = System.getProperty("java.version");
+ _jreLevel = System.getProperty("java.version");
} catch (SecurityException e) {
+ _jreLevel = "1.3.0";
} // ignore it, assume 1.3.0
+ jreLevel = _jreLevel;
java.util.StringTokenizer st = new java.util.StringTokenizer(jreLevel, ".");
int jreState = 0;
+ int _jreLevelMajor = 1;
+ int _jreLevelMinor = 3;
while (st.hasMoreTokens()) {
int i;
try {
@@ -155,15 +160,17 @@
}
switch (jreState++) {
case 0:
- jreLevelMajor = i; // state 0, this is the major version
+ _jreLevelMajor = i; // state 0, this is the major version
break;
case 1:
- jreLevelMinor = i; // state 1, this is the minor version
+ _jreLevelMinor = i; // state 1, this is the minor version
break;
default:
break; // state >1, ignore
}
}
+ jreLevelMajor = _jreLevelMajor;
+ jreLevelMinor = _jreLevelMinor;
}
/**
Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/Decimal.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/Decimal.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/Decimal.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/Decimal.java Tue Jun 30 11:22:48 2009
@@ -33,7 +33,7 @@
*/
public final static int PACKED_DECIMAL = 0x30;
- private static MessageUtil msgutil = SqlException.getMessageUtil();
+ private static final MessageUtil msgutil = SqlException.getMessageUtil();
//--------------------------private constants---------------------------------
Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/EncryptionManager.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/EncryptionManager.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/EncryptionManager.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/EncryptionManager.java Tue Jun 30 11:22:48 2009
@@ -618,7 +618,7 @@
* package when the capability is put back in (StringUtil.java). *
*********************************************************************/
- private static char[] hex_table = {
+ private static final char[] hex_table = {
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'a', 'b', 'c', 'd', 'e', 'f'
};
Modified: db/derby/code/trunk/java/client/org/apache/derby/client/am/Version.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/client/am/Version.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/client/am/Version.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/client/am/Version.java Tue Jun 30 11:22:48 2009
@@ -27,7 +27,7 @@
public abstract class Version {
- static MessageUtil msgutil = SqlException.getMessageUtil();
+ static final MessageUtil msgutil = SqlException.getMessageUtil();
// Same as java.sql.DatabaseMetaData.getDriverName()
public static String getDriverName() {
@@ -36,7 +36,7 @@
// for DatabaseMetaData.getDriverVersion()
public static String getDriverVersion() {
- return Configuration.dncProductVersionHolder__.getVersionBuildString(true);
+ return Configuration.getProductVersionHolder().getVersionBuildString(true);
}
@@ -68,7 +68,7 @@
// Not an external, just a helper method
private static String getDriverNameAndVersion() {
return Configuration.dncDriverName + " " +
- Configuration.dncProductVersionHolder__.getVersionBuildString(true);
+ Configuration.getProductVersionHolder().getVersionBuildString(true);
}
// -------------------------- configuration print stream ---------------------
Modified: db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientBaseDataSource.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientBaseDataSource.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientBaseDataSource.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientBaseDataSource.java Tue Jun 30 11:22:48 2009
@@ -25,7 +25,6 @@
import java.io.PrintWriter;
import java.io.File;
import java.security.AccessController;
-import java.security.PrivilegedActionException;
import java.util.Properties;
import java.util.StringTokenizer;
import java.util.NoSuchElementException;
@@ -66,10 +65,11 @@
// this information is needed to decide if security mechanism
// can be upgraded to EUSRIDPWD or not
// See getUpgradedSecurityMechanism()
- static boolean SUPPORTS_EUSRIDPWD = false;
+ static final boolean SUPPORTS_EUSRIDPWD;
static
{
+ boolean supports_eusridpwd = false;
try
{
// The EncryptionManager class will instantiate objects of the required
@@ -78,14 +78,15 @@
// in the JCE implementation in the JVM in which the client
// is loaded.
new org.apache.derby.client.am.EncryptionManager(null);
- SUPPORTS_EUSRIDPWD = true;
+ supports_eusridpwd = true;
}catch(Exception e)
{
// if an exception is thrown, ignore exception.
// set SUPPORTS_EUSRIDPWD to false indicating that the client
// does not support EUSRIDPWD security mechanism
- SUPPORTS_EUSRIDPWD = false;
+ supports_eusridpwd = false;
}
+ SUPPORTS_EUSRIDPWD = supports_eusridpwd;
}
// The loginTimeout jdbc 2 data source property is not supported as a jdbc 1 connection property,
Modified: db/derby/code/trunk/java/engine/org/apache/derby/iapi/types/JSQLType.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/iapi/types/JSQLType.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/iapi/types/JSQLType.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/types/JSQLType.java Tue Jun 30 11:22:48 2009
@@ -72,7 +72,7 @@
"java.lang.Double"
};
- static public final String[] primitiveNames =
+ static private final String[] primitiveNames =
{
"boolean",
"char",
@@ -196,6 +196,11 @@
return sqlType;
}
+ // Give read-only access to array of strings
+ public static String getPrimitiveName(byte index){
+ return primitiveNames[index];
+ }
+
///////////////////////////////////////////////////////////////////////
//
// Formatable BEHAVIOR
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/JavaValueNode.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/JavaValueNode.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/JavaValueNode.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/JavaValueNode.java Tue Jun 30 11:22:48 2009
@@ -95,7 +95,7 @@
{
case JSQLType.JAVA_CLASS: return myType.getJavaClassName();
- case JSQLType.JAVA_PRIMITIVE: return JSQLType.primitiveNames[ myType.getPrimitiveKind() ];
+ case JSQLType.JAVA_PRIMITIVE: return JSQLType.getPrimitiveName( myType.getPrimitiveKind() );
default:
@@ -120,7 +120,7 @@
switch( myType.getCategory() )
{
- case JSQLType.JAVA_PRIMITIVE: return JSQLType.primitiveNames[ myType.getPrimitiveKind() ];
+ case JSQLType.JAVA_PRIMITIVE: return JSQLType.getPrimitiveName( myType.getPrimitiveKind() );
default:
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/MethodCallNode.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/MethodCallNode.java?rev=789684&r1=789683&r2=789684&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/MethodCallNode.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/compile/MethodCallNode.java Tue Jun 30 11:22:48 2009
@@ -1095,7 +1095,7 @@
case JSQLType.JAVA_CLASS: return jsqlType.getJavaClassName();
- case JSQLType.JAVA_PRIMITIVE: return JSQLType.primitiveNames[ jsqlType.getPrimitiveKind() ];
+ case JSQLType.JAVA_PRIMITIVE: return JSQLType.getPrimitiveName( jsqlType.getPrimitiveKind() );
default:
@@ -1155,7 +1155,7 @@
case JSQLType.JAVA_PRIMITIVE:
- primParmTypeNames[i] = JSQLType.primitiveNames[ jsqlType.getPrimitiveKind() ];
+ primParmTypeNames[i] = JSQLType.getPrimitiveName( jsqlType.getPrimitiveKind() );
if ( castToPrimitiveAsNecessary) { methodParms[i].castToPrimitive(true); }
break;