7116445: Miscellaneous warnings in the JDBC/RowSet classes

Lance Andersen - Oracle Lance.Andersen at oracle.com
Fri Dec 2 14:14:11 UTC 2011


Here is the diff for DriverManager, I won't be pushing another webrev unless the word is to go ahead and add @Deprecated to the com/* classes of the RowSet RI or there is another change requested that is more detailed:

dhcp-adc-twvpn-2-vpnpool-10-154-44-9:sql lanceandersen$ hg diff DriverManager.java 
diff -r 43a630f11af6 src/share/classes/java/sql/DriverManager.java
--- a/src/share/classes/java/sql/DriverManager.java	Wed Nov 30 13:11:16 2011 -0800
+++ b/src/share/classes/java/sql/DriverManager.java	Fri Dec 02 09:12:21 2011 -0500
@@ -80,7 +80,7 @@
 
 
     // List of registered JDBC drivers
-    private final static CopyOnWriteArrayList<DriverInfo> registeredDrivers = new CopyOnWriteArrayList<DriverInfo>();
+    private final static CopyOnWriteArrayList<DriverInfo> registeredDrivers = new CopyOnWriteArrayList<>();
     private static volatile int loginTimeout = 0;
     private static volatile java.io.PrintWriter logWriter = null;
     private static volatile java.io.PrintStream logStream = null;
@@ -357,7 +357,7 @@
      * @return the list of JDBC Drivers loaded by the caller's class loader
      */
     public static java.util.Enumeration<Driver> getDrivers() {
-        java.util.Vector<Driver> result = new java.util.Vector<Driver>();
+        java.util.Vector<Driver> result = new java.util.Vector<>();
 
         // Gets the classloader of the code that called this method, may
         // be null.
@@ -621,15 +621,18 @@
         this.driver = driver;
     }
 
+    @Override
     public boolean equals(Object other) {
         return (other instanceof DriverInfo)
                 && this.driver == ((DriverInfo) other).driver;
     }
 
+    @Override
     public int hashCode() {
         return driver.hashCode();
     }
 
+    @Override
     public String toString() {
         return ("driver[className="  + driver + "]");
     }
On Dec 2, 2011, at 8:19 AM, Lance Andersen - Oracle wrote:

> Hi Dave,
> 
> thanks for the feedback.  Adding @Deprecated changes the signatures so I need to coordinate any changes as it will result in TCK signature failures.  This is something I will most likely do as part of the JDBC 4.2 work after giving the JDBC EG a chance for input.
> 
> There are several places in RowSet that also require the use of @Deprecated:
> 
> ---------------------------------------------------
> 
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/javax/sql/rowset/BaseRowSet.java:2393: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public void setUnicodeStream(int parameterIndex, java.io.InputStream x, int length) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/CachedRowSetImpl.java:2043: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/CachedRowSetImpl.java:2378: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(int columnIndex) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/CachedRowSetImpl.java:2647: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(String columnName, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/CachedRowSetImpl.java:2778: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(String columnName) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/ResultSet.java:361: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException;
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/ResultSet.java:480: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    java.io.InputStream getUnicodeStream(int columnIndex) throws SQLException;
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/ResultSet.java:646: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    BigDecimal getBigDecimal(String columnLabel, int scale) throws SQLException;
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/ResultSet.java:763: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    java.io.InputStream getUnicodeStream(String columnLabel) throws SQLException;
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:54: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public Date(int year, int month, int day) {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:182: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public int getHours() {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:194: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public int getMinutes() {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:206: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public int getSeconds() {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:218: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public void setHours(int i) {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:230: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public void setMinutes(int i) {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/Date.java:242: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public void setSeconds(int i) {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/PreparedStatement.java:347: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    void setUnicodeStream(int parameterIndex, java.io.InputStream x,
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/CallableStatement.java:298: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    BigDecimal getBigDecimal(int parameterIndex, int scale)
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JdbcRowSetImpl.java:1039: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JdbcRowSetImpl.java:1177: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(int columnIndex) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JdbcRowSetImpl.java:1359: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(String columnName, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JdbcRowSetImpl.java:1484: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(String columnName) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JoinRowSetImpl.java:1156: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JoinRowSetImpl.java:1267: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(int columnIndex) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JoinRowSetImpl.java:1439: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(String columnName, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/JoinRowSetImpl.java:1555: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(String columnName) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/internal/SyncResolverImpl.java:1291: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/internal/SyncResolverImpl.java:1427: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(int columnIndex) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/internal/SyncResolverImpl.java:1656: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public BigDecimal getBigDecimal(String columnName, int scale) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/com/sun/rowset/internal/SyncResolverImpl.java:1787: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public java.io.InputStream getUnicodeStream(String columnName) throws SQLException {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/DriverManager.java:433: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public static void setLogStream(java.io.PrintStream out) {
> /Users/lanceandersen/NetBeansProjects/JDBC4.2/jdbc4.0/src/java/sql/DriverManager.java:455: warning: [dep-ann] deprecated item is not annotated with @Deprecated
>    public static java.io.PrintStream getLogStream() {
> 
> ---------------------------------------------------
> 
> I could probably add the annotations to the com/sun/rowset/* classes now  as they are the RowSet RI, not public facing interfaces.  Alan, Stuart your thoughts?
> 
> I can add the @Override in DriverManager while I am there, but do not want to make a pass through the rest of the code  as part of this putback to do it elsewhere as I would like to get these back.
> 
> Again, thank you for your feedback.
> 
> Best
> Lance
> On Dec 2, 2011, at 6:12 AM, David Schlosnagle wrote:
> 
>> On Thu, Dec 1, 2011 at 10:08 PM, Lance Andersen - Oracle
>> <Lance.Andersen at oracle.com> wrote:> Sadly,  once i start digging, i
>> found more changes :-(>> Here are the latest revisions with the
>> additions/changes since the last review,
>> http://cr.openjdk.java.net/~lancea/7116445/webrev.03:
>> Lance,
>> 
>> I'd suggest also including the attached changes [1] to your current
>> webrev to remove the remaining warnings from java.sql.*.
>> 
>> [1]: http://dl.dropbox.com/u/23832908/openjdk/7116445-additions.patch
>> 
>> Thanks,
>> Dave
> 
> 
> Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037
> Oracle Java Engineering 
> 1 Network Drive 
> Burlington, MA 01803
> Lance.Andersen at oracle.com
> 


Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037
Oracle Java Engineering 
1 Network Drive 
Burlington, MA 01803
Lance.Andersen at oracle.com




More information about the core-libs-dev mailing list