com.ikokoon.serenity.process
Class Aggregator

java.lang.Object
  extended by com.ikokoon.serenity.process.AProcess
      extended by com.ikokoon.serenity.process.Aggregator
All Implemented Interfaces:
IConstants, IProcess

public class Aggregator
extends AProcess
implements IConstants

This class aggregates all the totals for the report. For each method there is a total for the number of lines that the method has and a for each line that is executed there is a line element. So the percentage of lines that were executed is covered lines / total lines * 100. The complexity total is added up for each method along with the coverage total for each method and divided by the total methods in the class to get the class average for coverage and complexity. Similarly for the package totals of complexity and coverage the class totals for the package are added up and divided by the number of classes in the package. Metrics are also gathered for the dependency, afferent and efferent and the abstractness and stability calculated from that.

Since:
18.07.09
Version:
01.00
Author:
Michael Couck

Field Summary
 
Fields inherited from class com.ikokoon.serenity.process.AProcess
logger
 
Fields inherited from interface com.ikokoon.serenity.IConstants
CLEAN_CLASSES, COMPLEXITY, COVERAGE, DATABASE_FILE_JPA, DATABASE_FILE_ODB, DATABASE_FILE_RAM, DEPENDENCY, EXCLUDED_PACKAGES_PROPERTY, INCLUDED_ADAPTERS_PROPERTY, INCLUDED_JARS_PROPERTY, INCLUDED_PACKAGES_PROPERTY, JAVA_CLASS_PATH, LOG_4_J_PROPERTIES, PROFILING, SERENITY_DIRECTORY, SERENITY_PERSISTENCE_UNIT, SERENITY_SOURCE, SUREFIRE_TEST_CLASS_PATH, WRITE_CLASSES
 
Constructor Summary
Aggregator(IProcess parent, IDataBase dataBase)
          Constructor takes the parent process.
 
Method Summary
protected  void aggregateClass(Class<?,?> klass)
           
protected  void aggregateClasses(java.util.List<Class<?,?>> classes)
           
protected  void aggregateMethods(java.util.List<Method<?,?>> methods)
           
protected  void aggregatePackage(Package<?,?> pakkage)
           
protected  void aggregatePackages(java.util.List<Package> children)
           
protected  void aggregateProject(Project<?,?> project)
           
 void execute()
          Please refer to the class JavaDoc for more information.
protected  java.util.Set<Line<?,?>> getLines(Class<?,?> klass, java.util.Set<Line<?,?>> lines)
           
protected  java.util.Set<Line<?,?>> getLines(java.util.Collection<Package> pakkages)
           
protected  java.util.Set<Line<?,?>> getLines(Package<?,?> pakkage)
           
protected  java.util.Set<Method<?,?>> getMethods(Class<?,?> klass, java.util.Set<Method<?,?>> methods)
           
protected  java.util.Set<Method<?,?>> getMethods(java.util.Collection<Package> pakkages)
           
protected  java.util.Set<Method<?,?>> getMethods(Package<?,?> pakkage)
           
 
Methods inherited from class com.ikokoon.serenity.process.AProcess
setChild
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Aggregator

public Aggregator(IProcess parent,
                  IDataBase dataBase)
Constructor takes the parent process.

Parameters:
parent - the parent process that will call this child. The child process, i.e. this instance, will add it's self to the parent
Method Detail

execute

public void execute()
Please refer to the class JavaDoc for more information.

Specified by:
execute in interface IProcess
Overrides:
execute in class AProcess
See Also:
AProcess

aggregateProject

protected void aggregateProject(Project<?,?> project)

aggregatePackages

protected void aggregatePackages(java.util.List<Package> children)

aggregatePackage

protected void aggregatePackage(Package<?,?> pakkage)

aggregateClasses

protected void aggregateClasses(java.util.List<Class<?,?>> classes)

aggregateClass

protected void aggregateClass(Class<?,?> klass)

getLines

protected java.util.Set<Line<?,?>> getLines(java.util.Collection<Package> pakkages)

getMethods

protected java.util.Set<Method<?,?>> getMethods(java.util.Collection<Package> pakkages)

getLines

protected java.util.Set<Line<?,?>> getLines(Package<?,?> pakkage)

getMethods

protected java.util.Set<Method<?,?>> getMethods(Package<?,?> pakkage)

getLines

protected java.util.Set<Line<?,?>> getLines(Class<?,?> klass,
                                            java.util.Set<Line<?,?>> lines)

getMethods

protected java.util.Set<Method<?,?>> getMethods(Class<?,?> klass,
                                                java.util.Set<Method<?,?>> methods)

aggregateMethods

protected void aggregateMethods(java.util.List<Method<?,?>> methods)


Copyright © 2010. All Rights Reserved.