From c748cd54ac5c8f29bd52fe021b10dc485989a6c7 Mon Sep 17 00:00:00 2001 From: Rob McKenna Date: Wed, 13 Jul 2016 14:56:00 +0100 Subject: [PATCH] 8141148: LDAP "follow" throws ClassCastException with Java 8 Reviewed-by: prappo, xuelei --- .../com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java | 4 ++-- .../classes/com/sun/jndi/ldap/LdapBindingEnumeration.java | 4 ++-- .../classes/com/sun/jndi/ldap/LdapNamingEnumeration.java | 4 ++-- .../classes/com/sun/jndi/ldap/LdapSearchEnumeration.java | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java index be3315674fa..8bef0da95ca 100644 --- a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java +++ b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/AbstractLdapNamingEnumeration.java @@ -300,7 +300,7 @@ abstract class AbstractLdapNamingEnumeration errEx = e; } - protected abstract AbstractLdapNamingEnumeration getReferredResults( + protected abstract AbstractLdapNamingEnumeration getReferredResults( LdapReferralContext refCtx) throws NamingException; /* @@ -360,7 +360,7 @@ abstract class AbstractLdapNamingEnumeration * Merge the entries and/or referrals from the supplied enumeration * with those of the current enumeration. */ - protected void update(AbstractLdapNamingEnumeration ne) { + protected void update(AbstractLdapNamingEnumeration ne) { // Cleanup previous context first homeCtx.decEnumCount(); diff --git a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapBindingEnumeration.java b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapBindingEnumeration.java index 65c80512596..8d385d3d7e7 100644 --- a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapBindingEnumeration.java +++ b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapBindingEnumeration.java @@ -104,9 +104,9 @@ final class LdapBindingEnumeration } @Override - protected LdapBindingEnumeration getReferredResults( + protected AbstractLdapNamingEnumeration getReferredResults( LdapReferralContext refCtx) throws NamingException{ // repeat the original operation at the new context - return (LdapBindingEnumeration)refCtx.listBindings(listArg); + return (AbstractLdapNamingEnumeration)refCtx.listBindings(listArg); } } diff --git a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapNamingEnumeration.java b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapNamingEnumeration.java index 422ce79b5fd..c923fda26f7 100644 --- a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapNamingEnumeration.java +++ b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapNamingEnumeration.java @@ -72,9 +72,9 @@ final class LdapNamingEnumeration } @Override - protected LdapNamingEnumeration getReferredResults( + protected AbstractLdapNamingEnumeration getReferredResults( LdapReferralContext refCtx) throws NamingException { // repeat the original operation at the new context - return (LdapNamingEnumeration)refCtx.list(listArg); + return (AbstractLdapNamingEnumeration)refCtx.list(listArg); } } diff --git a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapSearchEnumeration.java b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapSearchEnumeration.java index 4af58a8b0dd..43d040a1c44 100644 --- a/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapSearchEnumeration.java +++ b/jdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapSearchEnumeration.java @@ -199,15 +199,15 @@ final class LdapSearchEnumeration } @Override - protected LdapSearchEnumeration getReferredResults( + protected AbstractLdapNamingEnumeration getReferredResults( LdapReferralContext refCtx) throws NamingException { // repeat the original operation at the new context - return (LdapSearchEnumeration)refCtx.search( + return (AbstractLdapNamingEnumeration)refCtx.search( searchArgs.name, searchArgs.filter, searchArgs.cons); } @Override - protected void update(AbstractLdapNamingEnumeration ne) { + protected void update(AbstractLdapNamingEnumeration ne) { super.update(ne); // Update search-specific variables