src/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java

Print this page

        

@@ -26,11 +26,10 @@
 package com.sun.jndi.ldap;
 
 import java.util.Hashtable;
 import java.util.Vector;
 import java.util.Enumeration;
-import java.net.MalformedURLException;
 
 import javax.naming.*;
 import javax.naming.directory.*;
 import javax.naming.spi.ObjectFactory;
 import javax.naming.spi.InitialContextFactory;

@@ -117,13 +116,13 @@
     private static String[] getURLs(Reference ref) throws NamingException {
 
         int size = 0;   // number of URLs
         String[] urls = new String[ref.size()];
 
-        Enumeration addrs = ref.getAll();
+        Enumeration<RefAddr> addrs = ref.getAll();
         while (addrs.hasMoreElements()) {
-            RefAddr addr = (RefAddr)addrs.nextElement();
+            RefAddr addr = addrs.nextElement();
 
             if ((addr instanceof StringRefAddr) &&
                 addr.getType().equals(ADDRESS_TYPE)) {
 
                 urls[size++] = (String)addr.getContent();

@@ -143,11 +142,11 @@
         return urls2;
     }
 
     // ------------ Utilities used by other classes ----------------
 
-    public static DirContext getLdapCtxInstance(Object urlInfo, Hashtable env)
+    public static DirContext getLdapCtxInstance(Object urlInfo, Hashtable<?,?> env)
             throws NamingException {
 
         if (urlInfo instanceof String) {
             return getUsingURL((String)urlInfo, env);
         } else if (urlInfo instanceof String[]) {

@@ -156,11 +155,11 @@
             throw new IllegalArgumentException(
                 "argument must be an LDAP URL String or array of them");
         }
     }
 
-    private static DirContext getUsingURL(String url, Hashtable env)
+    private static DirContext getUsingURL(String url, Hashtable<?,?> env)
             throws NamingException {
         DirContext ctx = null;
         LdapURL ldapUrl = new LdapURL(url);
         String dn = ldapUrl.getDN();
         String host = ldapUrl.getHost();

@@ -200,11 +199,11 @@
     /*
      * Try each URL until one of them succeeds.
      * If all URLs fail, throw one of the exceptions arbitrarily.
      * Not pretty, but potentially more informative than returning null.
      */
-    private static DirContext getUsingURLs(String[] urls, Hashtable env)
+    private static DirContext getUsingURLs(String[] urls, Hashtable<?,?> env)
             throws NamingException {
         NamingException ne = null;
         DirContext ctx = null;
         for (int i = 0; i < urls.length; i++) {
             try {

@@ -219,12 +218,12 @@
     }
 
     /**
      * Used by Obj and obj/RemoteToAttrs too so must be public
      */
-    public static Attribute createTypeNameAttr(Class cl) {
-        Vector v = new Vector(10);
+    public static Attribute createTypeNameAttr(Class<?> cl) {
+        Vector<String> v = new Vector<>(10);
         String[] types = getTypeNames(cl, v);
         if (types.length > 0) {
             BasicAttribute tAttr =
                 new BasicAttribute(Obj.JAVA_ATTRIBUTES[Obj.TYPENAME]);
             for (int i = 0; i < types.length; i++) {

@@ -233,26 +232,27 @@
             return tAttr;
         }
         return null;
     }
 
-    private static String[] getTypeNames(Class currentClass, Vector v) {
+    private static String[] getTypeNames(Class<?> currentClass, Vector<String> v) {
 
         getClassesAux(currentClass, v);
         Class[] members = currentClass.getInterfaces();
         for (int i = 0; i < members.length; i++) {
             getClassesAux(members[i], v);
         }
         String[] ret = new String[v.size()];
         int i = 0;
-        for (java.util.Enumeration e = v.elements(); e.hasMoreElements();) {
-            ret[i++] = (String)e.nextElement();
+        
+        for (String name : v) {
+            ret[i++] = name;
         }
         return ret;
     }
 
-    private static void getClassesAux(Class currentClass, Vector v) {
+    private static void getClassesAux(Class<?> currentClass, Vector<String> v) {
         if (!v.contains(currentClass.getName())) {
             v.addElement(currentClass.getName());
         }
         currentClass = currentClass.getSuperclass();