< prev index next >

src/java.management/share/classes/javax/management/remote/JMXConnectorFactory.java

Print this page




 514                                 "." + providerClassName);
 515             Class<?> providerClass;
 516             try {
 517                 providerClass = Class.forName(className, true, loader);
 518             } catch (ClassNotFoundException e) {
 519                 //Add trace.
 520                 continue;
 521             }
 522 
 523             if (!targetInterface.isAssignableFrom(providerClass)) {
 524                 final String msg =
 525                     "Provider class does not implement " +
 526                     targetInterface.getName() + ": " +
 527                     providerClass.getName();
 528                 throw new JMXProviderException(msg);
 529             }
 530 
 531             // We have just proved that this cast is correct
 532             Class<? extends T> providerClassT = Util.cast(providerClass);
 533             try {
 534                 return providerClassT.newInstance();


 535             } catch (Exception e) {
 536                 final String msg =
 537                     "Exception when instantiating provider [" + className +
 538                     "]";
 539                 throw new JMXProviderException(msg, e);
 540             }
 541         }
 542 
 543         return null;
 544     }
 545 
 546     static ClassLoader resolveClassLoader(Map<String, ?> environment) {
 547         ClassLoader loader = null;
 548 
 549         if (environment != null) {
 550             try {
 551                 loader = (ClassLoader)
 552                     environment.get(PROTOCOL_PROVIDER_CLASS_LOADER);
 553             } catch (ClassCastException e) {
 554                 final String msg =


 514                                 "." + providerClassName);
 515             Class<?> providerClass;
 516             try {
 517                 providerClass = Class.forName(className, true, loader);
 518             } catch (ClassNotFoundException e) {
 519                 //Add trace.
 520                 continue;
 521             }
 522 
 523             if (!targetInterface.isAssignableFrom(providerClass)) {
 524                 final String msg =
 525                     "Provider class does not implement " +
 526                     targetInterface.getName() + ": " +
 527                     providerClass.getName();
 528                 throw new JMXProviderException(msg);
 529             }
 530 
 531             // We have just proved that this cast is correct
 532             Class<? extends T> providerClassT = Util.cast(providerClass);
 533             try {
 534                 @SuppressWarnings("deprecation")
 535                 T result = providerClassT.newInstance();
 536                 return result;
 537             } catch (Exception e) {
 538                 final String msg =
 539                     "Exception when instantiating provider [" + className +
 540                     "]";
 541                 throw new JMXProviderException(msg, e);
 542             }
 543         }
 544 
 545         return null;
 546     }
 547 
 548     static ClassLoader resolveClassLoader(Map<String, ?> environment) {
 549         ClassLoader loader = null;
 550 
 551         if (environment != null) {
 552             try {
 553                 loader = (ClassLoader)
 554                     environment.get(PROTOCOL_PROVIDER_CLASS_LOADER);
 555             } catch (ClassCastException e) {
 556                 final String msg =
< prev index next >