/** * Set a SourceLineAnnotation describing the source lines where the package * element is defined. */ public void setSourceLines(SourceLineAnnotation sourceLines) { this.sourceLines = sourceLines; sourceFileName = sourceLines.getSourceFile(); }
static String fullPath(SourceLineAnnotation src) { return src.getPackageName().replace('.', File.separatorChar) + File.separatorChar + src.getSourceFile(); }
public static String getOrGuessSourceFile(SourceLineAnnotation source) { if (source.isSourceFileKnown()) { return source.getSourceFile(); } String baseClassName = source.getClassName(); int i = baseClassName.lastIndexOf('.'); baseClassName = baseClassName.substring(i + 1); int j = baseClassName.indexOf('$'); if (j >= 0) { baseClassName = baseClassName.substring(0, j); } return baseClassName + ".java"; }
String key; if (packagePath.length() == 0) { key = source.getSourceFile(); } else { key = packagePath + "/" + source.getSourceFile();
String pkgName = line.getPackageName(); try { fullPath = sourceFinder.findSourceFile(pkgName, line.getSourceFile()).getFullFileName(); } catch (IOException e) { if ("".equals(pkgName)) { fullPath = line.getSourceFile(); } else { fullPath = pkgName.replace('.', '/') + "/" + line.getSourceFile();
@Override public void addError(BugInstance bug) { super.addError(bug); SourceLineAnnotation source = bug.getPrimarySourceLineAnnotation(); // see bug https://sourceforge.net/tracker/index.php?func=detail&aid=3322583&group_id=96405&atid=614693 // always add class stats to see useful details in package stats fancy.xsl output getClassStats(source.getClassName(), source.getSourceFile()).addError(bug); }
SourceLineAnnotation srcLine = SourceLineAnnotation.fromVisitedInstructionRange(this, lastPC, getPC()); SourceFinder sourceFinder = AnalysisContext.currentAnalysisContext().getSourceFinder(); SourceFile sourceFile = sourceFinder.findSourceFile(srcLine.getPackageName(), srcLine.getSourceFile());
SourceFile sourceFile = sourceFinder.findSourceFile(srcLine.getPackageName(), srcLine.getSourceFile()); int startLine = srcLine.getStartLine();
SourceLineAnnotation src = bug.getPrimarySourceLineAnnotation(); if (!sourceSearcher.sourceNotFound.contains(src.getClassName()) && !sourceSearcher.findSource(src)) { Set<String> paths = missingFiles.get(src.getSourceFile()); if (paths == null) { paths = new HashSet<>(); missingFiles.put(src.getSourceFile(), paths);
static SourceLineAnnotation obfuscate(SourceLineAnnotation m) { SourceLineAnnotation result = new SourceLineAnnotation(hashClass(m.getClassName()), hashFilename(m.getSourceFile()), m.getStartLine(), m.getEndLine(), m.getStartBytecode(), m.getEndBytecode()); result.setDescription(m.getDescription()); return result; }
/** * Set a SourceLineAnnotation describing the source lines where the package * element is defined. */ public void setSourceLines(SourceLineAnnotation sourceLines) { this.sourceLines = sourceLines; sourceFileName = sourceLines.getSourceFile(); }
static String fullPath(SourceLineAnnotation src) { return src.getPackageName().replace('.', File.separatorChar) + File.separatorChar + src.getSourceFile(); }
public static String getOrGuessSourceFile(SourceLineAnnotation source) { if (source.isSourceFileKnown()) { return source.getSourceFile(); } String baseClassName = source.getClassName(); int i = baseClassName.lastIndexOf('.'); baseClassName = baseClassName.substring(i + 1); int j = baseClassName.indexOf('$'); if (j >= 0) { baseClassName = baseClassName.substring(0, j); } return baseClassName + ".java"; }
private String findSourceFile(final Project project, final SourceFinder sourceFinder, final SourceLineAnnotation sourceLine) { try { SourceFile sourceFile = sourceFinder.findSourceFile(sourceLine); return sourceFile.getFullFileName(); } catch (IOException exception) { Logger.getLogger(getClass().getName()).log(Level.WARNING, "Can't resolve absolute file name for file " + sourceLine.getSourceFile() + ", dir list = " + project.getSourceDirList().toString()); return sourceLine.getPackageName().replace(DOT, SLASH) + SLASH + sourceLine.getSourceFile(); } }
private String findSourceFile(final Project project, final SourceFinder sourceFinder, final SourceLineAnnotation sourceLine) { try { SourceFile sourceFile = sourceFinder.findSourceFile(sourceLine); return sourceFile.getFullFileName(); } catch (IOException exception) { Logger.getLogger(getClass().getName()).log(Level.WARNING, "Can't resolve absolute file name for file " + sourceLine.getSourceFile() + ", dir list = " + project.getSourceDirList().toString()); return sourceLine.getPackageName().replace(DOT, SLASH) + SLASH + sourceLine.getSourceFile(); } }
private String findSourceFile(final Project project, final SourceFinder sourceFinder, final SourceLineAnnotation sourceLine) { try { SourceFile sourceFile = sourceFinder.findSourceFile(sourceLine); return sourceFile.getFullFileName(); } catch (IOException exception) { StringBuilder sb = new StringBuilder("Can't resolve absolute file name for file "); sb.append(sourceLine.getSourceFile()); if (isFirstError) { sb.append(", dir list = "); sb.append( project.getSourceDirList()); isFirstError = false; } Logger.getLogger(getClass().getName()).log(Level.WARNING, sb.toString()); return sourceLine.getPackageName().replace(DOT, SLASH) + SLASH + sourceLine.getSourceFile(); } }
if (srcLineAnnotation != null) { SourceFinder sourceFinder = AnalysisContext.currentAnalysisContext().getSourceFinder(); SourceFile sourceFile = sourceFinder.findSourceFile(srcLineAnnotation.getPackageName(), srcLineAnnotation.getSourceFile()); try (BufferedReader sourceReader = new BufferedReader(new InputStreamReader(sourceFile.getInputStream(), StandardCharsets.UTF_8))) {
@Override public void addError(BugInstance bug) { super.addError(bug); SourceLineAnnotation source = bug.getPrimarySourceLineAnnotation(); // see bug https://sourceforge.net/tracker/index.php?func=detail&aid=3322583&group_id=96405&atid=614693 // always add class stats to see useful details in package stats fancy.xsl output getClassStats(source.getClassName(), source.getSourceFile()).addError(bug); }
StyledDocument document = src.getDocument(); frame.getSourceCodeTextPane().setDocument(document); String sourceFile = mySourceLine.getSourceFile(); if (sourceFile == null || "<Unknown>".equals(sourceFile)) { sourceFile = mySourceLine.getSimpleClassName();
static SourceLineAnnotation obfuscate(SourceLineAnnotation m) { SourceLineAnnotation result = new SourceLineAnnotation(hashClass(m.getClassName()), hashFilename(m.getSourceFile()), m.getStartLine(), m.getEndLine(), m.getStartBytecode(), m.getEndBytecode()); result.setDescription(m.getDescription()); return result; }