protected synchronized Class loadClass(String name, boolean resolve) throws ClassNotFoundException { if (_excludedNames.contains(name)) { print("EXCLUDED: " + name); throw new ClassNotFoundException(name); } if (_cache.containsKey(name)) { print("CACHED: " + name); return (Class) _cache.get(name); } if (mustDelegate(name)) { print("NATIVE: " + name); return super.loadClass(name, resolve); } Class clazz = findRawClass(name); if (resolve) { resolveClass(clazz); } _cache.put(clazz.getName(), clazz); print("LOADED: " + name); return clazz; }
public boolean moveNext() { if (_delegate != null) { if (_delegate.moveNext()) { return true; } _delegate = null; } _currentElement++; if (_currentElement >= _array.length) { return false; } Object obj = _array[_currentElement]; Class clazz = obj.getClass(); if (clazz.isArray()) { if (clazz.getComponentType().isArray()) { _delegate = new MultidimensionalArrayIterator(_reflectArray, (Object[]) obj); } else { _delegate = new ReflectArrayIterator(_reflectArray, obj); } return moveNext(); } return true; }