public static boolean classImplementsInterface( Class<?> c,
						    String interfaceName,
						    boolean includeSuperClasses ) {
	
	Class<?>[] ifs = c.getInterfaces();
	boolean isFileHandler = false;
	for( int i = 0; i < ifs.length && !isFileHandler; i++ ) {
	    
	    if( ifs[i].getName().equals(interfaceName) ) {

		// Interface found!
		return true;

	    }
	    
	}

	// Recursive search?
	if( includeSuperClasses && c.getSuperclass() != null ) 
	    return CustomUtil.classImplementsInterface( c.getSuperclass(), interfaceName, includeSuperClasses );
	else
	    return false;

    }