Changeset: c5efd6e661e5 for monetdb-java
URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=c5efd6e661e5
Modified Files:
src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
src/main/java/nl/cwi/monetdb/jdbc/MonetSavepoint.java
src/main/java/nl/cwi/monetdb/jdbc/types/INET.java
src/main/java/nl/cwi/monetdb/jdbc/types/URL.java
Branch: default
Log Message:
Add "final" keyword to classes, method arguments and local variables where
possible.`
Improved error messages in MonetSavepoint.
Removed two not needed updateNCharacterStream() methods from MonetResultSet.
diffs (truncated from 1690 to 300 lines):
diff --git a/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
b/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
@@ -1892,7 +1892,7 @@ public class MonetConnection
* <tt>&"qt" "id" "tc" "cc" "rc"</tt>.
*/
// {{{ ResultSetResponse class implementation
- class ResultSetResponse implements Response {
+ final class ResultSetResponse implements Response {
/** The number of columns in this result */
public final int columncount;
/** The total number of rows this result set has */
@@ -2319,7 +2319,7 @@ public class MonetConnection
* object, it is possible for threads to get the same data.
*/
// {{{ DataBlockResponse class implementation
- static class DataBlockResponse implements Response {
+ private final static class DataBlockResponse implements Response {
/** The String array to keep the data in */
private final String[] data;
@@ -2429,7 +2429,7 @@ public class MonetConnection
* <tt>&2 0 -1</tt>
*/
// {{{ UpdateResponse class implementation
- static class UpdateResponse implements Response {
+ final static class UpdateResponse implements Response {
public final int count;
public final String lastid;
@@ -2502,7 +2502,7 @@ public class MonetConnection
* <tt>&4 (t|f)</tt>
*/
// {{{ AutoCommitResponse class implementation
- class AutoCommitResponse extends SchemaResponse {
+ private final class AutoCommitResponse extends SchemaResponse {
public final boolean autocommit;
public AutoCommitResponse(final boolean ac) {
@@ -2518,7 +2518,7 @@ public class MonetConnection
* responsibility to the caller to prevent concurrent access.
*/
// {{{ ResponseList class implementation
- class ResponseList {
+ final class ResponseList {
/** The cache size (number of rows in a DataBlockResponse
object) */
private final int cachesize;
/** The maximum number of results for this query */
diff --git a/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
b/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
@@ -10,14 +10,9 @@ package nl.cwi.monetdb.jdbc;
import nl.cwi.monetdb.mcl.parser.MCLParseException;
import nl.cwi.monetdb.mcl.parser.TupleLineParser;
-import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.io.Reader;
-import java.io.StringReader;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
-import java.net.MalformedURLException;
import java.net.URL;
import java.sql.Array;
import java.sql.Blob;
@@ -90,10 +85,10 @@ public class MonetResultSet
// they are accessed from MonetVirtualResultSet.absolute()
/** The current line of the buffer split in columns */
protected final TupleLineParser tlp;
+ /** The number of rows in this ResultSet */
+ protected final int tupleCount;
/** The current position of the cursor for this ResultSet object */
protected int curRow = 0;
- /** The number of rows in this ResultSet */
- protected final int tupleCount;
/** The type of this ResultSet (forward or scrollable) */
private int type = DEF_RESULTSETTYPE;
@@ -115,8 +110,8 @@ public class MonetResultSet
* @throws SQLException is a protocol error occurs
*/
MonetResultSet(
- Statement statement,
- MonetConnection.ResultSetResponse header)
+ final Statement statement,
+ final MonetConnection.ResultSetResponse header)
throws SQLException
{
if (statement == null) {
@@ -161,23 +156,20 @@ public class MonetResultSet
* @throws SQLException is a protocol error occurs
*/
MonetResultSet(
- Statement statement,
- String[] columns,
- String[] types,
- int results
- ) throws IllegalArgumentException
+ final Statement statement,
+ final String[] columns,
+ final String[] types,
+ final int results)
+ throws IllegalArgumentException
{
- if (statement == null) {
- throw new IllegalArgumentException("Statement may not
be null!");
- }
- if (columns == null || types == null) {
- throw new IllegalArgumentException("One of the given
arguments is null!");
+ if (statement == null || columns == null || types == null) {
+ throw new IllegalArgumentException("One of the given
arguments is null");
}
if (columns.length != types.length) {
- throw new IllegalArgumentException("Given arguments are
not the same size!");
+ throw new IllegalArgumentException("Given arrays are
not the same size");
}
if (results < 0) {
- throw new IllegalArgumentException("Negative rowcount
not allowed!");
+ throw new IllegalArgumentException("Negative rowcount
not allowed");
}
this.statement = statement;
@@ -199,10 +191,10 @@ public class MonetResultSet
* By doing it once (in the constructor) we can avoid doing this in
many getXyz()
* methods again and again thereby improving getXyz() method
performance.
*/
- private void populateJdbcSQLtypesArray() {
+ private final void populateJdbcSQLtypesArray() {
MonetConnection connection = null;
try {
- connection = (MonetConnection)statement.getConnection();
+ connection = (MonetConnection)
statement.getConnection();
} catch (SQLException se) { /* ignore it */ }
for (int i = 0; i < types.length; i++) {
@@ -269,7 +261,7 @@ public class MonetResultSet
// store it
curRow = row;
- String tmpLine = (header != null) ? header.getLine(row - 1) :
null;
+ final String tmpLine = (header != null) ? header.getLine(row -
1) : null;
if (tmpLine == null)
return false;
@@ -343,7 +335,7 @@ public class MonetResultSet
* a database access error occurs or this method is called on a
closed result set
*/
@Override
- public int findColumn(String columnLabel) throws SQLException {
+ public int findColumn(final String columnLabel) throws SQLException {
checkNotClosed();
if (columnLabel != null) {
final int array_size = columns.length;
@@ -374,21 +366,21 @@ public class MonetResultSet
}
@Override
- public Array getArray(int columnIndex) throws SQLException {
+ public Array getArray(final int columnIndex) throws SQLException {
throw newSQLFeatureNotSupportedException("getArray");
}
@Override
- public Array getArray(String columnLabel) throws SQLException {
+ public Array getArray(final String columnLabel) throws SQLException {
throw newSQLFeatureNotSupportedException("getArray");
}
/* Mapi doesn't allow something for streams at the moment, thus all not
implemented for now */
@Override
- public InputStream getAsciiStream(int columnIndex) throws SQLException {
+ public InputStream getAsciiStream(final int columnIndex) throws
SQLException {
throw newSQLFeatureNotSupportedException("getAsciiStream");
}
@Override
- public InputStream getAsciiStream(String columnLabel) throws
SQLException {
+ public InputStream getAsciiStream(final String columnLabel) throws
SQLException {
throw newSQLFeatureNotSupportedException("getAsciiStream");
}
@@ -423,22 +415,22 @@ public class MonetResultSet
* database access error occurs or this method is called on a closed
result set
*/
@Override
- public InputStream getBinaryStream(int columnIndex) throws SQLException
{
+ public InputStream getBinaryStream(final int columnIndex) throws
SQLException {
checkNotClosed();
try {
switch (JdbcSQLTypes[columnIndex - 1]) {
case Types.BLOB:
- Blob blob = getBlob(columnIndex);
+ final Blob blob = getBlob(columnIndex);
if (blob == null)
return null;
return blob.getBinaryStream();
case Types.BINARY:
case Types.VARBINARY:
case Types.LONGVARBINARY:
- byte[] bte = getBytes(columnIndex);
+ final byte[] bte =
getBytes(columnIndex);
if (bte == null)
return null;
- return new ByteArrayInputStream(bte);
+ return new
java.io.ByteArrayInputStream(bte);
}
throw new SQLException("Cannot operate on " +
types[columnIndex - 1] + " type", "M1M05");
} catch (IndexOutOfBoundsException e) {
@@ -468,7 +460,7 @@ public class MonetResultSet
* database access error occurs or this method is called on a closed
result set
*/
@Override
- public InputStream getBinaryStream(String columnLabel) throws
SQLException {
+ public InputStream getBinaryStream(final String columnLabel) throws
SQLException {
return getBinaryStream(findColumn(columnLabel));
}
@@ -483,16 +475,16 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs or this
method is called on a closed result set
*/
@Override
- public Reader getCharacterStream(int columnIndex) throws SQLException {
+ public Reader getCharacterStream(final int columnIndex) throws
SQLException {
checkNotClosed();
try {
- String val = tlp.values[columnIndex - 1];
+ final String val = tlp.values[columnIndex - 1];
if (val == null) {
lastReadWasNull = true;
return null;
}
lastReadWasNull = false;
- return new StringReader(val);
+ return new java.io.StringReader(val);
} catch (IndexOutOfBoundsException e) {
throw newSQLInvalidColumnIndexException(columnIndex);
}
@@ -509,7 +501,7 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs
*/
@Override
- public Reader getCharacterStream(String columnLabel) throws
SQLException {
+ public Reader getCharacterStream(final String columnLabel) throws
SQLException {
return getCharacterStream(findColumn(columnLabel));
}
@@ -526,7 +518,7 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs
*/
@Override
- public Reader getNCharacterStream(int columnIndex) throws SQLException {
+ public Reader getNCharacterStream(final int columnIndex) throws
SQLException {
return getCharacterStream(columnIndex);
}
@@ -543,7 +535,7 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs
*/
@Override
- public Reader getNCharacterStream(String columnLabel) throws
SQLException {
+ public Reader getNCharacterStream(final String columnLabel) throws
SQLException {
return getCharacterStream(findColumn(columnLabel));
}
@@ -558,10 +550,10 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs or this
method is called on a closed result set
*/
@Override
- public Blob getBlob(int columnIndex) throws SQLException {
+ public Blob getBlob(final int columnIndex) throws SQLException {
checkNotClosed();
try {
- String val = tlp.values[columnIndex - 1];
+ final String val = tlp.values[columnIndex - 1];
if (val == null) {
lastReadWasNull = true;
return null;
@@ -585,7 +577,7 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs
*/
@Override
- public Blob getBlob(String columnLabel) throws SQLException {
+ public Blob getBlob(final String columnLabel) throws SQLException {
return getBlob(findColumn(columnLabel));
}
@@ -600,10 +592,10 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs or this
method is called on a closed result set
*/
@Override
- public Clob getClob(int columnIndex) throws SQLException {
+ public Clob getClob(final int columnIndex) throws SQLException {
checkNotClosed();
try {
- String val = tlp.values[columnIndex - 1];
+ final String val = tlp.values[columnIndex - 1];
if (val == null) {
lastReadWasNull = true;
return null;
@@ -627,7 +619,7 @@ public class MonetResultSet
* @throws SQLException if a database access error occurs
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list