From d94cccc75bab0fa6fd63af147e3f5bb8d80787a6 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Fri, 22 Sep 2017 12:16:52 +0000 Subject: [PATCH 1/2] Replace bare literals Replace bare literals with magic constants. For example: `cal.set(1, 1, 577738, 0, 0, 0);` becomes `cal.set(1, Calendar.FEBRUARY, 577738, 0, 0, 0);` --- src/main/java/com/microsoft/sqlserver/jdbc/IOBuffer.java | 2 +- .../microsoft/sqlserver/jdbc/SQLServerBulkCopy42Helper.java | 2 +- .../microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/microsoft/sqlserver/jdbc/IOBuffer.java b/src/main/java/com/microsoft/sqlserver/jdbc/IOBuffer.java index 4369d3c00..c0ba49d71 100644 --- a/src/main/java/com/microsoft/sqlserver/jdbc/IOBuffer.java +++ b/src/main/java/com/microsoft/sqlserver/jdbc/IOBuffer.java @@ -498,7 +498,7 @@ class GregorianChange { GregorianCalendar cal = new GregorianCalendar(Locale.US); cal.clear(); - cal.set(1, 1, 577738, 0, 0, 0);// 577738 = 1+577737(no of days since epoch that brings us to oct 15th 1582) + cal.set(1, Calendar.FEBRUARY, 577738, 0, 0, 0);// 577738 = 1+577737(no of days since epoch that brings us to oct 15th 1582) if (cal.get(Calendar.DAY_OF_MONTH) == 15) { // If the date calculation is correct(the above bug is fixed), // post the default gregorian cut over date, the pure gregorian date diff --git a/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerBulkCopy42Helper.java b/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerBulkCopy42Helper.java index ec44c1834..ea9ff510f 100644 --- a/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerBulkCopy42Helper.java +++ b/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerBulkCopy42Helper.java @@ -75,7 +75,7 @@ static Object getTemporalObjectFromCSVWithFormatter(String valueStrUntrimmed, return ts; case java.sql.Types.TIME: // Time is returned as Timestamp to preserve nano seconds. - cal.set(connection.baseYear(), 00, 01); + cal.set(connection.baseYear(), Calendar.JANUARY, 01); ts = new java.sql.Timestamp(cal.getTimeInMillis()); ts.setNanos(taNano); return new java.sql.Timestamp(ts.getTime()); diff --git a/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java b/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java index 601e06274..425d741bf 100644 --- a/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java +++ b/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java @@ -788,7 +788,7 @@ public T unwrap(Class iface) throws SQLException { } catch (SQLException e) { SQLServerException.makeFromDriverError(con, stmtParent, e.toString(), null, false); - return 0; + return ParameterMetaData.parameterModeUnknown; } } @@ -908,7 +908,7 @@ public T unwrap(Class iface) throws SQLException { } catch (SQLException e) { SQLServerException.makeFromDriverError(con, stmtParent, e.toString(), null, false); - return 0; + return ParameterMetaData.parameterNoNulls; } } From 4b93851adfb05efc7cf5e05a6dab59fdf6395ea1 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Tue, 10 Oct 2017 10:01:14 +0000 Subject: [PATCH 2/2] Remove explicit interface reference --- .../microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java b/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java index 425d741bf..813d3e7ea 100644 --- a/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java +++ b/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerParameterMetaData.java @@ -788,7 +788,7 @@ public T unwrap(Class iface) throws SQLException { } catch (SQLException e) { SQLServerException.makeFromDriverError(con, stmtParent, e.toString(), null, false); - return ParameterMetaData.parameterModeUnknown; + return parameterModeUnknown; } } @@ -908,7 +908,7 @@ public T unwrap(Class iface) throws SQLException { } catch (SQLException e) { SQLServerException.makeFromDriverError(con, stmtParent, e.toString(), null, false); - return ParameterMetaData.parameterNoNulls; + return parameterNoNulls; } }