package de.is24.deadcode4j.analyzer; import de.is24.deadcode4j.AnalysisContext; import javassist.CtClass; import javax.annotation.Nonnull; import java.util.Collection; /** * Analyzes class files: lists the classes a class is depending on. * * @since 1.0.0 */ public class ClassDependencyAnalyzer extends ByteCodeAnalyzer { @Override protected void analyzeClass(@Nonnull AnalysisContext analysisContext, @Nonnull CtClass clazz) { String className = clazz.getName(); @SuppressWarnings("unchecked") Collection<String> refClasses = clazz.getRefClasses(); analysisContext.addAnalyzedClass(className); analysisContext.addDependencies(className, refClasses); } }