boolean lacksInstrumentationInfo( SourceFileData sfd ) { return !sfd.containsInstrumentationInfo(); }
public int compare(Object arg0, Object arg1) { SourceFileData sourceFileData0 = (SourceFileData) arg0; SourceFileData sourceFileData1 = (SourceFileData) arg1; int comparison = sourceFileData0.getBaseName().compareTo( sourceFileData1.getBaseName()); if (comparison != 0) return comparison; return sourceFileData0.getName().compareTo(sourceFileData1.getName()); }
private String generateTableRowsForSourceFile(SourceFileData sourceFileData) { StringBuffer ret = new StringBuffer(); String sourceFileName = sourceFileData.getNormalizedName(); // TODO: ccn should be calculated per-class, not per-file double ccn = complexity.getCCNForSourceFile(sourceFileData); Iterator iter = sourceFileData.getClasses().iterator(); while (iter.hasNext()) { ClassData classData = (ClassData) iter.next(); ret .append(generateTableRowForClass(classData, sourceFileName, ccn)); } return ret.toString(); }
public Collection getSourceFiles() { SortedMap sourceFileDatas = new TreeMap(); lock.lock(); try { Iterator iter = this.children.values().iterator(); while (iter.hasNext()) { ClassData classData = (ClassData) iter.next(); String sourceFileName = classData.getSourceFileName(); SourceFileData sourceFileData = (SourceFileData) sourceFileDatas .get(sourceFileName); if (sourceFileData == null) { sourceFileData = new SourceFileData(sourceFileName); sourceFileDatas.put(sourceFileName, sourceFileData); } sourceFileData.addClassData(classData); } } finally { lock.unlock(); } return sourceFileDatas.values(); }
private void generateSourceFile(SourceFileData sourceFileData) throws IOException { if (!sourceFileData.containsInstrumentationInfo()) { LOGGER.info("Data file does not contain instrumentation " + "information for the file " + sourceFileData.getName() + ". Ensure this class was instrumented, and this " + "data file contains the instrumentation information."); String filename = sourceFileData.getNormalizedName() + ".html"; File file = new File(destinationDir, filename); PrintWriter out = null; out.println("<body>"); out.print("<h5>Coverage Report - "); String classPackageName = sourceFileData.getPackageName(); if ((classPackageName != null) && classPackageName.length() > 0) { out.print(classPackageName + "."); out.print(sourceFileData.getBaseName()); out.println("</h5>");
out.println("<tr>"); String percentCovered; if (sourceFileData.getNumberOfValidLines() > 0) percentCovered = getPercentValue(sourceFileData .getLineCoverageRate()); else percentCovered = "N/A"; out .println("<td nowrap=\"nowrap\"><a target=\"summary\" href=\"" + sourceFileData.getNormalizedName() + ".html\">" + sourceFileData.getBaseName() + "</a> <i>(" + percentCovered
private String generateHtmlizedJavaSource(SourceFileData sourceFileData) { Source source = finder.getSource(sourceFileData.getName()); return "<p>Unable to locate " + sourceFileData.getName() + ". Have you specified the source directory?</p>"; while ((lineStr = br.readLine()) != null) { ret.append("<tr>"); if (sourceFileData.isValidSourceLineNumber(lineNumber)) { LineData lineData = sourceFileData .getLineCoverage(lineNumber); ret.append(" <td class=\"numLineCover\"> " + lineNumber + "</td>");
private void generateSourceFiles() { Iterator iter = projectData.getSourceFiles().iterator(); while (iter.hasNext()) { SourceFileData sourceFileData = (SourceFileData) iter.next(); try { generateSourceFile(sourceFileData); } catch (IOException e) { LOGGER.info("Could not generate HTML file for source file " + sourceFileData.getName() + ": " + e.getLocalizedMessage()); } } }
private void dumpClasses(SourceFileData sourceFileData) { Iterator it = sourceFileData.getClasses().iterator(); while (it.hasNext()) { dumpClass((ClassData) it.next()); } }
void buildClassDataHelpers() { for( Object o : getData().getClasses() ) { ClassData cd = (ClassData) o; ClassData dcd = null; if ( getSamePackageData() != null ) { dcd = (ClassData) getSamePackageData().getChild( cd.getBaseName() ); } try { ClassDataPair cdp = getFactory().makeClassDataPair( cd, dcd, this ); addChild( cdp ); } catch( RuntimeException e ) { throw new RuntimeException( "Could not create ClassDataPair " + cd.getName(), e ); } } }
@Override public Comparable<?> getOrderingObject() { return getData().getBaseName(); }
/** * Returns true if the given object is an instance of the * SourceFileData class, and it contains the same data as this * class. */ public boolean equals(Object obj) { if (this == obj) return true; if ((obj == null) || !(obj.getClass().equals(this.getClass()))) return false; SourceFileData sourceFileData = (SourceFileData) obj; getBothLocks(sourceFileData); try { return super.equals(obj) && this.name.equals(sourceFileData.name); } finally { lock.unlock(); sourceFileData.lock.unlock(); } }
void generateSourceFile(SourceFileDataPair sourceFileData) throws Exception { String filename = sourceFileData.getData().getNormalizedName() + ".json.gzuu"; File file = new File(jsonDir, filename); JSONObject jo = generateSourceFileObject( sourceFileData ); writeCompressedJsonToFile( jo, file ); }
JSONObject generateRowObject( SourceFileDataPair sfdp, String line, int lineNumber ) throws Exception { JSONObject result = new JSONObject(); result.put( "number", lineNumber ); result.put( "html", javaToHtml.process( line ) ); if (sfdp.getData().isValidSourceLineNumber(lineNumber)) { LineDataPair ld = sfdp.getLine( lineNumber ); formatLineDataPair( ld, result ); } return result; }
private void generateSourceFile(SourceFileData sourceFileData) throws IOException { if (!sourceFileData.containsInstrumentationInfo()) { LOGGER.info("Data file does not contain instrumentation " + "information for the file " + sourceFileData.getName() + ". Ensure this class was instrumented, and this " + "data file contains the instrumentation information."); String filename = sourceFileData.getNormalizedName() + ".html"; File file = new File(destinationDir, filename); PrintWriter out = null; out.println("<body>"); out.print("<h5>Coverage Report - "); String classPackageName = sourceFileData.getPackageName(); if ((classPackageName != null) && classPackageName.length() > 0) { out.print(classPackageName + "."); out.print(sourceFileData.getBaseName()); out.println("</h5>");
out.println("<tr>"); String percentCovered; if (sourceFileData.getNumberOfValidLines() > 0) percentCovered = getPercentValue(sourceFileData .getLineCoverageRate()); else percentCovered = "N/A"; out .println("<td nowrap=\"nowrap\"><a target=\"summary\" href=\"" + sourceFileData.getNormalizedName() + ".html\">" + sourceFileData.getBaseName() + "</a> <i>(" + percentCovered
private String generateHtmlizedJavaSource(SourceFileData sourceFileData) { Source source = finder.getSource(sourceFileData.getName()); return "<p>Unable to locate " + sourceFileData.getName() + ". Have you specified the source directory?</p>"; while ((lineStr = br.readLine()) != null) { ret.append("<tr>"); if (sourceFileData.isValidSourceLineNumber(lineNumber)) { LineData lineData = sourceFileData .getLineCoverage(lineNumber); ret.append(" <td class=\"numLineCover\"> " + lineNumber + "</td>");
private void generateSourceFiles() { Iterator iter = projectData.getSourceFiles().iterator(); while (iter.hasNext()) { SourceFileData sourceFileData = (SourceFileData) iter.next(); try { generateSourceFile(sourceFileData); } catch (IOException e) { LOGGER.info("Could not generate HTML file for source file " + sourceFileData.getName() + ": " + e.getLocalizedMessage()); } } }
public Collection getSourceFiles() { SortedMap sourceFileDatas = new TreeMap(); lock.lock(); try { Iterator iter = this.children.values().iterator(); while (iter.hasNext()) { ClassData classData = (ClassData) iter.next(); String sourceFileName = classData.getSourceFileName(); SourceFileData sourceFileData = (SourceFileData) sourceFileDatas .get(sourceFileName); if (sourceFileData == null) { sourceFileData = new SourceFileData(sourceFileName); sourceFileDatas.put(sourceFileName, sourceFileData); } sourceFileData.addClassData(classData); } } finally { lock.unlock(); } return sourceFileDatas.values(); }
private void dumpClasses(SourceFileData sourceFileData) { Iterator it = sourceFileData.getClasses().iterator(); while (it.hasNext()) { dumpClass((ClassData) it.next()); } }