diff -r 0f93a75b9213 -r 3810c9a2efa1 src/java.xml.crypto/share/classes/com/sun/org/apache/xml/internal/security/utils/resolver/ResourceResolver.java --- a/src/java.xml.crypto/share/classes/com/sun/org/apache/xml/internal/security/utils/resolver/ResourceResolver.java Mon Jun 18 15:24:48 2018 -0700 +++ b/src/java.xml.crypto/share/classes/com/sun/org/apache/xml/internal/security/utils/resolver/ResourceResolver.java Tue Jun 19 08:06:35 2018 +0800 @@ -42,12 +42,11 @@ */ public class ResourceResolver { - /** {@link org.apache.commons.logging} logging facility */ - private static java.util.logging.Logger log = - java.util.logging.Logger.getLogger(ResourceResolver.class.getName()); + private static final com.sun.org.slf4j.internal.Logger LOG = + com.sun.org.slf4j.internal.LoggerFactory.getLogger(ResourceResolver.class); /** these are the system-wide resolvers */ - private static List resolverList = new ArrayList(); + private static final List resolverList = new ArrayList<>(); /** Field resolverSpi */ private final ResourceResolverSpi resolverSpi; @@ -64,21 +63,7 @@ /** * Method getInstance * - * @param uri - * @param baseURI - * @return the instance - * - * @throws ResourceResolverException - */ - public static final ResourceResolver getInstance(Attr uri, String baseURI) - throws ResourceResolverException { - return getInstance(uri, baseURI, false); - } - - /** - * Method getInstance - * - * @param uri + * @param uriAttr * @param baseURI * @param secureValidation * @return the instance @@ -100,30 +85,26 @@ if (!resolver.resolverSpi.engineIsThreadSafe()) { try { @SuppressWarnings("deprecation") - ResourceResolver tmp = new ResourceResolver(resolver.resolverSpi.getClass().newInstance()); + ResourceResolver tmp = + new ResourceResolver(resolver.resolverSpi.getClass().newInstance()); resolverTmp = tmp; - ; } catch (InstantiationException e) { - throw new ResourceResolverException("", e, context.attr, context.baseUri); + throw new ResourceResolverException(e, context.uriToResolve, context.baseUri, ""); } catch (IllegalAccessException e) { - throw new ResourceResolverException("", e, context.attr, context.baseUri); + throw new ResourceResolverException(e, context.uriToResolve, context.baseUri, ""); } } - if (log.isLoggable(java.util.logging.Level.FINE)) { - log.log(java.util.logging.Level.FINE, - "check resolvability by class " + resolverTmp.getClass().getName() - ); - } + LOG.debug("check resolvability by class {}", resolverTmp.getClass().getName()); - if ((resolverTmp != null) && resolverTmp.canResolve(context)) { + if (resolverTmp != null && resolverTmp.canResolve(context)) { // Check to see whether the Resolver is allowed if (context.secureValidation && (resolverTmp.resolverSpi instanceof ResolverLocalFilesystem || resolverTmp.resolverSpi instanceof ResolverDirectHTTP)) { Object exArgs[] = { resolverTmp.resolverSpi.getClass().getName() }; throw new ResourceResolverException( - "signature.Reference.ForbiddenResolver", exArgs, context.attr, context.baseUri + "signature.Reference.ForbiddenResolver", exArgs, context.uriToResolve, context.baseUri ); } return resolverTmp; @@ -131,10 +112,10 @@ } } - Object exArgs[] = { ((context.uriToResolve != null) - ? context.uriToResolve : "null"), context.baseUri }; + Object exArgs[] = { context.uriToResolve != null + ? context.uriToResolve : "null", context.baseUri }; - throw new ResourceResolverException("utils.resolver.noClass", exArgs, context.attr, context.baseUri); + throw new ResourceResolverException("utils.resolver.noClass", exArgs, context.uriToResolve, context.baseUri); } /** @@ -150,7 +131,7 @@ public static ResourceResolver getInstance( Attr uri, String baseURI, List individualResolvers ) throws ResourceResolverException { - return getInstance(uri, baseURI, individualResolvers, false); + return getInstance(uri, baseURI, individualResolvers, true); } /** @@ -167,12 +148,10 @@ public static ResourceResolver getInstance( Attr uri, String baseURI, List individualResolvers, boolean secureValidation ) throws ResourceResolverException { - if (log.isLoggable(java.util.logging.Level.FINE)) { - log.log(java.util.logging.Level.FINE, - "I was asked to create a ResourceResolver and got " - + (individualResolvers == null ? 0 : individualResolvers.size()) - ); - } + LOG.debug( + "I was asked to create a ResourceResolver and got {}", + (individualResolvers == null ? 0 : individualResolvers.size()) + ); ResourceResolverContext context = new ResourceResolverContext(uri, baseURI, secureValidation); @@ -182,10 +161,8 @@ ResourceResolver resolver = individualResolvers.get(i); if (resolver != null) { - if (log.isLoggable(java.util.logging.Level.FINE)) { - String currentClass = resolver.resolverSpi.getClass().getName(); - log.log(java.util.logging.Level.FINE, "check resolvability by class " + currentClass); - } + String currentClass = resolver.resolverSpi.getClass().getName(); + LOG.debug("check resolvability by class {}", currentClass); if (resolver.canResolve(context)) { return resolver; @@ -198,7 +175,7 @@ } /** - * Registers a ResourceResolverSpi class. This method logs a warning if + * Registers a ResourceResolverSpi class. This method LOGs a warning if * the class cannot be registered. * * @param className the name of the ResourceResolverSpi class to be registered @@ -210,16 +187,17 @@ JavaUtils.checkRegisterPermission(); try { Class resourceResolverClass = - (Class) Class.forName(className); + (Class) + ClassLoaderUtils.loadClass(className, ResourceResolver.class); register(resourceResolverClass, false); } catch (ClassNotFoundException e) { - log.log(java.util.logging.Level.WARNING, "Error loading resolver " + className + " disabling it"); + LOG.warn("Error loading resolver " + className + " disabling it"); } } /** * Registers a ResourceResolverSpi class at the beginning of the provider - * list. This method logs a warning if the class cannot be registered. + * list. This method LOGs a warning if the class cannot be registered. * * @param className the name of the ResourceResolverSpi class to be registered * @throws SecurityException if a security manager is installed and the @@ -230,15 +208,16 @@ JavaUtils.checkRegisterPermission(); try { Class resourceResolverClass = - (Class) Class.forName(className); + (Class) + ClassLoaderUtils.loadClass(className, ResourceResolver.class); register(resourceResolverClass, true); } catch (ClassNotFoundException e) { - log.log(java.util.logging.Level.WARNING, "Error loading resolver " + className + " disabling it"); + LOG.warn("Error loading resolver " + className + " disabling it"); } } /** - * Registers a ResourceResolverSpi class. This method logs a warning if the class + * Registers a ResourceResolverSpi class. This method LOGs a warning if the class * cannot be registered. * @param className * @param start @@ -252,14 +231,14 @@ ResourceResolverSpi resourceResolverSpi = className.newInstance(); register(resourceResolverSpi, start); } catch (IllegalAccessException e) { - log.log(java.util.logging.Level.WARNING, "Error loading resolver " + className + " disabling it"); + LOG.warn("Error loading resolver " + className + " disabling it"); } catch (InstantiationException e) { - log.log(java.util.logging.Level.WARNING, "Error loading resolver " + className + " disabling it"); + LOG.warn("Error loading resolver " + className + " disabling it"); } } /** - * Registers a ResourceResolverSpi instance. This method logs a warning if the class + * Registers a ResourceResolverSpi instance. This method LOGs a warning if the class * cannot be registered. * @param resourceResolverSpi * @param start @@ -275,9 +254,7 @@ resolverList.add(new ResourceResolver(resourceResolverSpi)); } } - if (log.isLoggable(java.util.logging.Level.FINE)) { - log.log(java.util.logging.Level.FINE, "Registered resolver: " + resourceResolverSpi.toString()); - } + LOG.debug("Registered resolver: {}", resourceResolverSpi.toString()); } /** @@ -293,15 +270,6 @@ } /** - * @deprecated New clients should use {@link #resolve(Attr, String, boolean)} - */ - @Deprecated - public XMLSignatureInput resolve(Attr uri, String baseURI) - throws ResourceResolverException { - return resolve(uri, baseURI, true); - } - - /** * Method resolve * * @param uri