Clover coverage report -
Coverage timestamp: So Nov 6 2005 14:19:51 CET
file stats: LOC: 46   Methods: 1
NCLOC: 18   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
ClassLoaderUtil.java - 28,6% 100% 37,5%
coverage coverage
 1    /*
 2    * Copyright (c) 2002-2003 by OpenSymphony
 3    * All rights reserved.
 4    */
 5    package com.opensymphony.oscache.util;
 6   
 7   
 8    /**
 9    * <p>This code is borrowed directly from OSCore, but is duplicated
 10    * here to avoid having to add a dependency on the entire OSCore jar.</p>
 11    *
 12    * <p>If much more code from OSCore is needed then it might be wiser to
 13    * bite the bullet and add a dependency.</p>
 14    */
 15    public class ClassLoaderUtil {
 16    /**
 17    * Load a class with a given name.
 18    *
 19    * It will try to load the class in the following order:
 20    * <ul>
 21    * <li>From Thread.currentThread().getContextClassLoader()
 22    * <li>Using the basic Class.forName()
 23    * <li>From ClassLoaderUtil.class.getClassLoader()
 24    * <li>From the callingClass.getClassLoader()
 25    * </ul>
 26    *
 27    * @param className The name of the class to load
 28    * @param callingClass The Class object of the calling object
 29    * @throws ClassNotFoundException If the class cannot be found anywhere.
 30    */
 31  60 public static Class loadClass(String className, Class callingClass) throws ClassNotFoundException {
 32  60 try {
 33  60 return Thread.currentThread().getContextClassLoader().loadClass(className);
 34    } catch (ClassNotFoundException e) {
 35  0 try {
 36  0 return Class.forName(className);
 37    } catch (ClassNotFoundException ex) {
 38  0 try {
 39  0 return ClassLoaderUtil.class.getClassLoader().loadClass(className);
 40    } catch (ClassNotFoundException exc) {
 41  0 return callingClass.getClassLoader().loadClass(className);
 42    }
 43    }
 44    }
 45    }
 46    }