class ClassResourceClassInformationRepository implements ClassInformationRepository {

    @Override
    public ClassInformation getInformation(String internalClassName) {
        Validate.notNull(internalClassName);
        
        try (InputStream is = classLoader.getResourceAsStream(internalClassName + ".class")) {
            if (is == null) {
                return null;
            }
            
            return InternalUtils.getClassInformation(is);
        } catch (IOException ioe) {
            throw new IllegalStateException(ioe); // this should never happen
        }
    }

    public  ClassResourceClassInformationRepository(ClassLoader classLoader);

}