public final class ReportGenerator extends AbstractReportGenerator implements IAppErrorCodes
Modifier and Type | Class and Description |
---|---|
private static class |
ReportGenerator.IDGenerator |
Modifier and Type | Field and Description |
---|---|
private static long[] |
ATTRIBUTE_SETS |
private static java.lang.String |
CSS |
private static java.lang.String |
CSS_BLANK |
private static java.lang.String |
CSS_BOTTOM |
private static java.lang.String |
CSS_CLASS_ITEM_SPECIAL |
private static java.lang.String |
CSS_CLS_NOLEFT |
private static java.lang.String |
CSS_COVERAGE_COMPLETE |
private static java.lang.String |
CSS_COVERAGE_PARTIAL |
private static java.lang.String |
CSS_COVERAGE_ZERO |
private static java.lang.String |
CSS_DATA |
private static java.lang.String |
CSS_DATA_FIRST |
private static java.lang.String |
CSS_DATA_HIGHLIGHT |
private static java.lang.String |
CSS_DATA_HIGHLIGHT_FIRST |
private static java.lang.String |
CSS_HEADER |
private static java.lang.String |
CSS_HEADER_FIRST |
private static java.lang.String |
CSS_HEADER_FOOTER |
private static java.lang.String |
CSS_INVISIBLE_TABLE |
private static java.lang.String |
CSS_ITEM_NAME |
private static java.lang.String |
CSS_LINENUM |
private static java.lang.String |
CSS_NAV |
private static java.lang.String |
CSS_ODDROW |
private static java.lang.String |
CSS_SOURCE |
private static java.lang.String |
CSS_TITLE |
private static java.lang.String |
DARKER_BACKGROUND |
private static java.lang.String |
FILE_EXTENSION |
private static int |
IO_BUF_SIZE |
private static IContent |
LEFT_BRACKET |
private java.text.FieldPosition |
m_fieldPosition |
private IContent |
m_footerBottom |
private java.text.DecimalFormat |
m_format |
private IContent |
m_pageTitle |
private java.util.LinkedList |
m_queue |
private ReportGenerator.IDGenerator |
m_reportIDNamespace |
private static int |
MAX_DISPLAY_NAME_LENGTH |
private static java.lang.String |
NAV_BACKGROUND |
private static java.io.File |
NESTED_ITEMS_PARENT_DIR |
private static java.lang.String |
NESTED_ITEMS_PARENT_DIRNAME |
private static int[][] |
NESTING |
private static java.lang.String |
REPORT_HEADER_TITLE |
private static IContent |
RIGHT_BRACKET |
private static int |
SRC_LINE_OFFSET |
private static java.lang.String |
TITLE_BACKGROUND |
private static java.lang.String |
TYPE |
private static boolean |
USE_LINE_COVERAGE_TOOLTIPS |
m_cache, m_hasLineNumberInfo, m_hasSrcFileInfo, m_log, m_metrics, m_settings, m_srcView, m_typeSortComparators, m_verbose, m_view
ARGS_IO_FAILURE, CLASS_STAMP_MISMATCH, INSTR_IO_FAILURE, INVALID_COLUMN_NAME, INVALID_PARAMETER_VALUE, MAIN_CLASS_BAD_DELEGATION, MAIN_CLASS_LOAD_FAILURE, MAIN_CLASS_NOT_FOUND, MAIN_METHOD_FAILURE, MAIN_METHOD_NOT_FOUND, OUT_IO_FAILURE, OUT_MKDIR_FAILURE, REPORT_GEN_FAILURE, REPORT_IO_FAILURE, REQUIRED_PARAMETER_MISSING, SECURITY_RESTRICTION, UNEXPECTED_FAILURE
Constructor and Description |
---|
ReportGenerator() |
Modifier and Type | Method and Description |
---|---|
private void |
addClassItemRow(IItem item,
boolean odd,
HTMLTable table,
int[] columns,
java.lang.String nameHREF,
boolean anchor) |
private void |
addClassRow(ClassItem item,
int clsIndex,
HTMLTable table,
int[] columns,
java.lang.String itemHREF,
boolean isAnchor) |
private int[] |
addHeaderRow(IItem item,
HTMLTable table,
int[] columns) |
private void |
addItemRow(IItem item,
boolean odd,
HTMLTable table,
int[] columns,
java.lang.String nameHREF,
boolean anchor) |
private static java.lang.String |
addLineAnchorID(int line,
java.lang.String anchorID,
IntObjectMap lineAnchorIDMap) |
private IElement |
addPageFooter(HTMLDocument page,
IItem item,
IItem[] path) |
private IElement |
addPageHeader(HTMLDocument page,
IItem item,
IItem[] path) |
private void |
addPageHeaderTitleRow(HTMLTable header) |
void |
cleanup() |
private HTMLDocument |
createPage(java.lang.String title) |
private static java.lang.String |
dataCellStyle(int column,
boolean highlight) |
private void |
embedSrcFile(SrcFileItem item,
HTMLDocument page,
IntObjectMap anchorMap,
SourcePathCache cache) |
private IContent |
getFooterBottom() |
private static java.io.File |
getItemFile(java.io.File parentDir,
java.lang.String itemKey) |
private java.lang.String |
getItemHREF(IItem base,
IItem item) |
private static java.lang.String |
getItemKey(IItem item) |
private IContent |
getPageTitle() |
private IItem[] |
getParentPath(IItem item) |
java.lang.String |
getType() |
private static java.lang.String |
headerCellStyle(int column) |
private static HTMLWriter |
openOutFile(java.io.File file,
java.lang.String encoding,
boolean mkdirs) |
void |
process(IMetaData mdata,
ICoverageData cdata,
SourcePathCache cache,
IProperties properties) |
private boolean |
srcFileAvailable(SrcFileItem item,
SourcePathCache cache) |
private static void |
trimForDisplay(java.lang.StringBuffer buf) |
java.lang.Object |
visit(AllItem item,
java.lang.Object ctx) |
java.lang.Object |
visit(ClassItem item,
java.lang.Object ctx) |
java.lang.Object |
visit(PackageItem item,
java.lang.Object ctx) |
java.lang.Object |
visit(SrcFileItem item,
java.lang.Object ctx) |
create, initialize, reset
visit
private final java.text.DecimalFormat m_format
private final java.text.FieldPosition m_fieldPosition
private java.util.LinkedList m_queue
private ReportGenerator.IDGenerator m_reportIDNamespace
private IContent m_pageTitle
private IContent m_footerBottom
private static final boolean USE_LINE_COVERAGE_TOOLTIPS
private static final java.lang.String TYPE
private static final java.lang.String REPORT_HEADER_TITLE
private static final IContent LEFT_BRACKET
private static final IContent RIGHT_BRACKET
private static final int MAX_DISPLAY_NAME_LENGTH
private static final int SRC_LINE_OFFSET
private static final java.lang.String CSS_HEADER_FOOTER
private static final java.lang.String CSS_TITLE
private static final java.lang.String CSS_NAV
private static final java.lang.String CSS_COVERAGE_ZERO
private static final java.lang.String CSS_COVERAGE_PARTIAL
private static final java.lang.String CSS_COVERAGE_COMPLETE
private static final java.lang.String DARKER_BACKGROUND
private static final java.lang.String TITLE_BACKGROUND
private static final java.lang.String NAV_BACKGROUND
private static final java.lang.String CSS_INVISIBLE_TABLE
private static final java.lang.String CSS_ITEM_NAME
private static final java.lang.String CSS_CLASS_ITEM_SPECIAL
private static final java.lang.String CSS_SOURCE
private static final java.lang.String CSS_LINENUM
private static final java.lang.String CSS_BOTTOM
private static final java.lang.String CSS_ODDROW
private static final java.lang.String CSS_BLANK
private static final java.lang.String CSS_DATA
private static final java.lang.String CSS_DATA_HIGHLIGHT
private static final java.lang.String CSS_DATA_FIRST
private static final java.lang.String CSS_DATA_HIGHLIGHT_FIRST
private static final java.lang.String CSS_HEADER
private static final java.lang.String CSS_HEADER_FIRST
private static final java.lang.String CSS_CLS_NOLEFT
private static final java.lang.String CSS
private static final java.lang.String NESTED_ITEMS_PARENT_DIRNAME
private static final java.io.File NESTED_ITEMS_PARENT_DIR
private static final int[][] NESTING
private static final java.lang.String FILE_EXTENSION
private static final int IO_BUF_SIZE
private static final long[] ATTRIBUTE_SETS
public final java.lang.String getType()
getType
in interface IReportGenerator
public void process(IMetaData mdata, ICoverageData cdata, SourcePathCache cache, IProperties properties) throws EMMARuntimeException
process
in interface IReportGenerator
EMMARuntimeException
public void cleanup()
cleanup
in interface IReportGenerator
cleanup
in class AbstractReportGenerator
public java.lang.Object visit(AllItem item, java.lang.Object ctx)
visit
in interface IItemVisitor
visit
in class AbstractItemVisitor
public java.lang.Object visit(PackageItem item, java.lang.Object ctx)
visit
in interface IItemVisitor
visit
in class AbstractItemVisitor
public java.lang.Object visit(SrcFileItem item, java.lang.Object ctx)
visit
in interface IItemVisitor
visit
in class AbstractItemVisitor
public java.lang.Object visit(ClassItem item, java.lang.Object ctx)
visit
in interface IItemVisitor
visit
in class AbstractItemVisitor
private HTMLDocument createPage(java.lang.String title)
private IElement addPageHeader(HTMLDocument page, IItem item, IItem[] path)
private IElement addPageFooter(HTMLDocument page, IItem item, IItem[] path)
private void addItemRow(IItem item, boolean odd, HTMLTable table, int[] columns, java.lang.String nameHREF, boolean anchor)
private void addClassRow(ClassItem item, int clsIndex, HTMLTable table, int[] columns, java.lang.String itemHREF, boolean isAnchor)
private void addClassItemRow(IItem item, boolean odd, HTMLTable table, int[] columns, java.lang.String nameHREF, boolean anchor)
private boolean srcFileAvailable(SrcFileItem item, SourcePathCache cache)
private void embedSrcFile(SrcFileItem item, HTMLDocument page, IntObjectMap anchorMap, SourcePathCache cache)
private static java.lang.String addLineAnchorID(int line, java.lang.String anchorID, IntObjectMap lineAnchorIDMap)
private IContent getPageTitle()
private IContent getFooterBottom()
private void addPageHeaderTitleRow(HTMLTable header)
private static void trimForDisplay(java.lang.StringBuffer buf)
private static java.io.File getItemFile(java.io.File parentDir, java.lang.String itemKey)
private static java.lang.String getItemKey(IItem item)
private static HTMLWriter openOutFile(java.io.File file, java.lang.String encoding, boolean mkdirs)
private static java.lang.String dataCellStyle(int column, boolean highlight)
private static java.lang.String headerCellStyle(int column)