On 11/12/2013 10:51 AM, Chris Hegarty wrote:
Looks ok to me Joe.

-Chris.

A small issue,
  refs = (WeakReference<Class<?>>[])new WeakReference[interfaces.length];
should be
refs = (WeakReference<Class<?>>[])new WeakReference<?>[interfaces.length];

otherwise, looks good.

Rémi


On 12/11/13 09:28, Joe Darcy wrote:
Hello,

Please review the patch below which would remove another batch of raw
type javac lint warnings from the core libraries.

No signatures of public or protected methods in the Java SE
specification have been modified. Regression tests in affected areas pass.

Thanks,

-Joe

diff -r 9fcb07df1c92 src/share/classes/java/io/ObjectOutputStream.java
--- a/src/share/classes/java/io/ObjectOutputStream.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/io/ObjectOutputStream.java    Tue Nov 12
00:51:15 2013 -0800
@@ -1248,7 +1248,7 @@
          handles.assign(unshared ? null : desc);

          Class<?> cl = desc.forClass();
-        Class[] ifaces = cl.getInterfaces();
+        Class<?>[] ifaces = cl.getInterfaces();
          bout.writeInt(ifaces.length);
          for (int i = 0; i < ifaces.length; i++) {
              bout.writeUTF(ifaces[i].getName());
diff -r 9fcb07df1c92 src/share/classes/java/io/ObjectStreamClass.java
--- a/src/share/classes/java/io/ObjectStreamClass.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/io/ObjectStreamClass.java    Tue Nov 12
00:51:15 2013 -0800
@@ -1,5 +1,5 @@
  /*
- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights
reserved.
+ * Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights
reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
* This code is free software; you can redistribute it and/or modify it
@@ -1746,7 +1746,7 @@
                  dout.writeUTF("()V");
              }

-            Constructor[] cons = cl.getDeclaredConstructors();
+            Constructor<?>[] cons = cl.getDeclaredConstructors();
              MemberSignature[] consSigs = new
MemberSignature[cons.length];
              for (int i = 0; i < cons.length; i++) {
                  consSigs[i] = new MemberSignature(cons[i]);
diff -r 9fcb07df1c92 src/share/classes/java/lang/reflect/Proxy.java
--- a/src/share/classes/java/lang/reflect/Proxy.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/lang/reflect/Proxy.java    Tue Nov 12
00:51:15 2013 -0800
@@ -494,9 +494,10 @@
          private final int hash;
          private final WeakReference<Class<?>>[] refs;

+        @SuppressWarnings({"rawtypes", "unchecked"})
          KeyX(Class<?>[] interfaces) {
              hash = Arrays.hashCode(interfaces);
-            refs = new WeakReference[interfaces.length];
+            refs = (WeakReference<Class<?>>[])new
WeakReference[interfaces.length];
              for (int i = 0; i < interfaces.length; i++) {
                  refs[i] = new WeakReference<>(interfaces[i]);
              }
diff -r 9fcb07df1c92 src/share/classes/java/nio/file/TempFileHelper.java
--- a/src/share/classes/java/nio/file/TempFileHelper.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/nio/file/TempFileHelper.java    Tue Nov 12
00:51:15 2013 -0800
@@ -81,7 +81,7 @@
                                 String prefix,
                                 String suffix,
                                 boolean createDirectory,
-                               FileAttribute[] attrs)
+                               FileAttribute<?>[] attrs)
          throws IOException
      {
          if (prefix == null)
@@ -155,7 +155,7 @@
      static Path createTempFile(Path dir,
                                 String prefix,
                                 String suffix,
-                               FileAttribute[] attrs)
+                               FileAttribute<?>[] attrs)
          throws IOException
      {
          return create(dir, prefix, suffix, false, attrs);
@@ -167,7 +167,7 @@
       */
      static Path createTempDirectory(Path dir,
                                      String prefix,
-                                    FileAttribute[] attrs)
+                                    FileAttribute<?>[] attrs)
          throws IOException
      {
          return create(dir, prefix, null, true, attrs);
diff -r 9fcb07df1c92 src/share/classes/java/util/IdentityHashMap.java
--- a/src/share/classes/java/util/IdentityHashMap.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/util/IdentityHashMap.java    Tue Nov 12
00:51:15 2013 -0800
@@ -1243,7 +1243,7 @@
                      if (ti >= size) {
                          throw new ConcurrentModificationException();
                      }
-                    a[ti++] = (T) new
AbstractMap.SimpleEntry(unmaskNull(key), tab[si + 1]);
+                    a[ti++] = (T) new
AbstractMap.SimpleEntry<>(unmaskNull(key), tab[si + 1]);
                  }
              }
              // fewer elements than expected or concurrent modification
from other thread detected
diff -r 9fcb07df1c92 src/share/classes/java/util/logging/Logger.java
--- a/src/share/classes/java/util/logging/Logger.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/util/logging/Logger.java    Tue Nov 12
00:51:15 2013 -0800
@@ -351,7 +351,7 @@
                                           ? caller.getClassLoader()
                                           : null);
          if (callersClassLoader != null) {
-            this.callersClassLoaderRef = new
WeakReference(callersClassLoader);
+            this.callersClassLoaderRef = new
WeakReference<>(callersClassLoader);
          }
      }

diff -r 9fcb07df1c92 src/share/classes/java/util/logging/Logging.java
--- a/src/share/classes/java/util/logging/Logging.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/java/util/logging/Logging.java    Tue Nov 12
00:51:15 2013 -0800
@@ -1,5 +1,5 @@
  /*
- * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights
reserved.
+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights
reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
* This code is free software; you can redistribute it and/or modify it
@@ -55,11 +55,11 @@
      }

      public List<String> getLoggerNames() {
-        Enumeration loggers = logManager.getLoggerNames();
+        Enumeration<String> loggers = logManager.getLoggerNames();
          ArrayList<String> array = new ArrayList<>();

          for (; loggers.hasMoreElements();) {
-            array.add((String) loggers.nextElement());
+            array.add(loggers.nextElement());
          }
          return array;
      }
diff -r 9fcb07df1c92 src/share/classes/sun/misc/Cleaner.java
--- a/src/share/classes/sun/misc/Cleaner.java    Sat Nov 09 04:21:28
2013 +0400
+++ b/src/share/classes/sun/misc/Cleaner.java    Tue Nov 12 00:51:15
2013 -0800
@@ -1,5 +1,5 @@
  /*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights
reserved.
+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights
reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
* This code is free software; you can redistribute it and/or modify it
@@ -57,14 +57,14 @@
   */

  public class Cleaner
-    extends PhantomReference
+    extends PhantomReference<Object>
  {

      // Dummy reference queue, needed because the PhantomReference
constructor
      // insists that we pass a queue.  Nothing will ever be placed on
this queue
      // since the reference handler invokes cleaners explicitly.
      //
- private static final ReferenceQueue dummyQueue = new ReferenceQueue();
+    private static final ReferenceQueue<Object> dummyQueue = new
ReferenceQueue<>();

// Doubly-linked list of live cleaners, which prevents the cleaners
      // themselves from being GC'd before their referents
@@ -119,6 +119,7 @@
      /**
       * Creates a new cleaner.
       *
+     * @param  ob the referent object to be cleaned
       * @param  thunk
       *         The cleanup code to be run when the cleaner is
invoked.  The
       *         cleanup code is run directly from the reference-handler
thread,
diff -r 9fcb07df1c92 src/share/classes/sun/misc/ProxyGenerator.java
--- a/src/share/classes/sun/misc/ProxyGenerator.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/sun/misc/ProxyGenerator.java    Tue Nov 12
00:51:15 2013 -0800
@@ -384,7 +384,7 @@
      private String className;

      /** proxy interfaces */
-    private Class[] interfaces;
+    private Class<?>[] interfaces;

      /** proxy class access flags */
      private int accessFlags;
diff -r 9fcb07df1c92 src/share/classes/sun/rmi/rmic/Main.java
--- a/src/share/classes/sun/rmi/rmic/Main.java    Sat Nov 09 04:21:28
2013 +0400
+++ b/src/share/classes/sun/rmi/rmic/Main.java    Tue Nov 12 00:51:15
2013 -0800
@@ -494,7 +494,7 @@
                                               extDirsArg);
          BatchEnvironment result = null;
          try {
-            Class[] ctorArgTypes =
{OutputStream.class,ClassPath.class,Main.class};
+            Class<?>[] ctorArgTypes =
{OutputStream.class,ClassPath.class,Main.class};
              Object[] ctorArgs = {out,classPath,this};
              Constructor<? extends BatchEnvironment> constructor =
                  environmentClass.getConstructor(ctorArgTypes);
diff -r 9fcb07df1c92 src/share/classes/sun/rmi/server/LoaderHandler.java
--- a/src/share/classes/sun/rmi/server/LoaderHandler.java    Sat Nov 09
04:21:28 2013 +0400
+++ b/src/share/classes/sun/rmi/server/LoaderHandler.java    Tue Nov 12
00:51:15 2013 -0800
@@ -692,7 +692,7 @@
       * Define a proxy class in the given class loader.  The proxy
       * class will implement the given interfaces Classes.
       */
-    private static Class<?> loadProxyClass(ClassLoader loader, Class[]
interfaces)
+    private static Class<?> loadProxyClass(ClassLoader loader,
Class<?>[] interfaces)
          throws ClassNotFoundException
      {
          try {
@@ -719,7 +719,7 @@
       */
private static ClassLoader loadProxyInterfaces(String[] interfaces,
                                                     ClassLoader loader,
-                                                   Class[] classObjs,
+ Class<?>[] classObjs,
boolean[] nonpublic)
          throws ClassNotFoundException
      {
diff -r 9fcb07df1c92 src/share/classes/sun/rmi/server/UnicastServerRef.java
--- a/src/share/classes/sun/rmi/server/UnicastServerRef.java Sat Nov
09 04:21:28 2013 +0400
+++ b/src/share/classes/sun/rmi/server/UnicastServerRef.java Tue Nov
12 00:51:15 2013 -0800
@@ -299,7 +299,7 @@
              logCall(obj, method);

              // unmarshal parameters
-            Class[] types = method.getParameterTypes();
+            Class<?>[] types = method.getParameterTypes();
              Object[] params = new Object[types.length];

              try {
diff -r 9fcb07df1c92 src/share/classes/sun/rmi/server/Util.java
--- a/src/share/classes/sun/rmi/server/Util.java    Sat Nov 09 04:21:28
2013 +0400
+++ b/src/share/classes/sun/rmi/server/Util.java    Tue Nov 12 00:51:15
2013 -0800
@@ -87,7 +87,7 @@
Collections.synchronizedMap(new WeakHashMap<Class<?>, Void>(11));

      /** parameter types for stub constructor */
- private static final Class[] stubConsParamTypes = { RemoteRef.class };
+    private static final Class<?>[] stubConsParamTypes = {
RemoteRef.class };

      private Util() {
      }
@@ -143,7 +143,7 @@
          }

          final ClassLoader loader = implClass.getClassLoader();
-        final Class[] interfaces = getRemoteInterfaces(implClass);
+        final Class<?>[] interfaces = getRemoteInterfaces(implClass);
          final InvocationHandler handler =
              new RemoteObjectInvocationHandler(clientRef);


Reply via email to