protected void readClassDef(InputStream in) throws IOException { readClassDef(in, null); }
protected void readClassDef(InputStream in) throws IOException { readClassDef(in, null); }
protected void readClassDef(InputStream in) throws IOException { readClassDef(in, null); }
private void linkParent(ClassInfo classInfo) throws IOException { if (classInfo.superType == null) return; if (classInfo.superType.equals("java.lang.Object")) return; ClassInfo parentInfo = classInfo.superclassInfo; if (parentInfo == null) { parentInfo = classInfos.get(classInfo.superType); if (parentInfo == null) { if (classInfo.clazz != null) { readClassDef(((Class<?>) classInfo.clazz).getSuperclass()); } else { readClassDef(classInfo.superType); } parentInfo = classInfos.get(classInfo.superType); if (parentInfo == null) return; linkParent(parentInfo); } classInfo.superclassInfo = parentInfo; } if (!parentInfo.subclassInfos.contains(classInfo)) { parentInfo.subclassInfos.add(classInfo); } }
private void linkParent(ClassInfo classInfo) throws IOException { if (classInfo.superType == null) return; if (classInfo.superType.equals("java.lang.Object")) return; ClassInfo parentInfo = classInfo.superclassInfo; if (parentInfo == null) { parentInfo = classInfos.get(classInfo.superType); if (parentInfo == null) { if (classInfo.clazz != null) { readClassDef(((Class<?>) classInfo.clazz).getSuperclass()); } else { readClassDef(classInfo.superType); } parentInfo = classInfos.get(classInfo.superType); if (parentInfo == null) return; linkParent(parentInfo); } classInfo.superclassInfo = parentInfo; } if (!parentInfo.subclassInfos.contains(classInfo)) { parentInfo.subclassInfos.add(classInfo); } }
private void linkParent(ClassInfo classInfo) throws IOException { if (classInfo.superType == null) return; if (classInfo.superType.equals("java.lang.Object")) return; ClassInfo parentInfo = classInfo.superclassInfo; if (parentInfo == null) { parentInfo = classInfos.get(classInfo.superType); if (parentInfo == null) { if (classInfo.clazz != null) { readClassDef(((Class<?>) classInfo.clazz).getSuperclass()); } else { readClassDef(classInfo.superType); } parentInfo = classInfos.get(classInfo.superType); if (parentInfo == null) return; linkParent(parentInfo); } classInfo.superclassInfo = parentInfo; } if (!parentInfo.subclassInfos.contains(classInfo)) { parentInfo.subclassInfos.add(classInfo); } }
private void linkInterfaces(ClassInfo classInfo) throws IOException { final List<ClassInfo> infos = new ArrayList<ClassInfo>(); if (classInfo.clazz != null){ final Class<?>[] interfaces = classInfo.clazz.getInterfaces(); for (Class<?> clazz : interfaces) { ClassInfo interfaceInfo = classInfos.get(clazz.getName()); if (interfaceInfo == null){ readClassDef(clazz); } interfaceInfo = classInfos.get(clazz.getName()); if (interfaceInfo != null) { infos.add(interfaceInfo); } } } else { for (String className : classInfo.interfaces) { ClassInfo interfaceInfo = classInfos.get(className); if (interfaceInfo == null){ readClassDef(className); } interfaceInfo = classInfos.get(className); if (interfaceInfo != null) { infos.add(interfaceInfo); } } } for (ClassInfo info : infos) { linkInterfaces(info); } }
private void linkInterfaces(ClassInfo classInfo) throws IOException { final List<ClassInfo> infos = new ArrayList<ClassInfo>(); if (classInfo.clazz != null){ final Class<?>[] interfaces = classInfo.clazz.getInterfaces(); for (Class<?> clazz : interfaces) { ClassInfo interfaceInfo = classInfos.get(clazz.getName()); if (interfaceInfo == null){ readClassDef(clazz); } interfaceInfo = classInfos.get(clazz.getName()); if (interfaceInfo != null) { infos.add(interfaceInfo); } } } else { for (String className : classInfo.interfaces) { ClassInfo interfaceInfo = classInfos.get(className); if (interfaceInfo == null){ readClassDef(className); } interfaceInfo = classInfos.get(className); if (interfaceInfo != null) { infos.add(interfaceInfo); } } } for (ClassInfo info : infos) { linkInterfaces(info); } }
private void linkInterfaces(ClassInfo classInfo) throws IOException { final List<ClassInfo> infos = new ArrayList<ClassInfo>(); if (classInfo.clazz != null){ final Class<?>[] interfaces = classInfo.clazz.getInterfaces(); for (Class<?> clazz : interfaces) { ClassInfo interfaceInfo = classInfos.get(clazz.getName()); if (interfaceInfo == null){ readClassDef(clazz); } interfaceInfo = classInfos.get(clazz.getName()); if (interfaceInfo != null) { infos.add(interfaceInfo); } } } else { for (String className : classInfo.interfaces) { ClassInfo interfaceInfo = classInfos.get(className); if (interfaceInfo == null){ readClassDef(className); } interfaceInfo = classInfos.get(className); if (interfaceInfo != null) { infos.add(interfaceInfo); } } } for (ClassInfo info : infos) { linkInterfaces(info); } }
protected void readClassDef(String className) { int pos = className.indexOf("<"); if (pos > -1) { className = className.substring(0, pos); } pos = className.indexOf(">"); if (pos > -1) { className = className.substring(0, pos); } if (!className.endsWith(".class")) { className = className.replace('.', '/') + ".class"; } try { URL resource = getResource(className); if (resource != null) { InputStream in = resource.openStream(); try { readClassDef(in); } finally { in.close(); } } else { classesNotLoaded.add(className + " (no resource found for class)"); } } catch (IOException e) { classesNotLoaded.add(className + e.getMessage()); } }
protected void readClassDef(String className) { int pos = className.indexOf("<"); if (pos > -1) { className = className.substring(0, pos); } pos = className.indexOf(">"); if (pos > -1) { className = className.substring(0, pos); } if (!className.endsWith(".class")) { className = className.replace('.', '/') + ".class"; } try { // TODO: check out META-INF/versions/<version>/className URL resource = getResource(className); if (resource != null) { InputStream in = resource.openStream(); try { readClassDef(in); } finally { in.close(); } } else { classesNotLoaded.add(className + " (no resource found for class)"); } } catch (IOException e) { classesNotLoaded.add(className + e.getMessage()); } }
protected void readClassDef(String className) { int pos = className.indexOf("<"); if (pos > -1) { className = className.substring(0, pos); } pos = className.indexOf(">"); if (pos > -1) { className = className.substring(0, pos); } if (!className.endsWith(".class")) { className = className.replace('.', '/') + ".class"; } try { // TODO: check out META-INF/versions/<version>/className URL resource = getResource(className); if (resource != null) { InputStream in = resource.openStream(); try { readClassDef(in); } finally { in.close(); } } else { classesNotLoaded.add(className + " (no resource found for class)"); } } catch (IOException e) { classesNotLoaded.add(className + e.getMessage()); } }