Class AbstractMetric

java.lang.Object
org.gmetrics.metric.AbstractMetric
All Implemented Interfaces:
groovy.lang.GroovyObject, Metric
Direct Known Subclasses:
AbstractCoberturaCoverageMetric, AbstractMethodMetric, AbstractPackageCouplingMetric, ClassCountMetric, ClassLineCountMetric, FieldCountMetric, MethodCountMetric

public abstract class AbstractMetric extends Object implements Metric, groovy.lang.GroovyObject
  • Constructor Details

    • AbstractMetric

      public AbstractMetric()
  • Method Details

    • createAggregateMetricResult

      protected MetricResult createAggregateMetricResult(MetricLevel metricLevel, Collection<MetricResult> childMetricResults)
    • getMetaClass

      public groovy.lang.MetaClass getMetaClass()
      Specified by:
      getMetaClass in interface groovy.lang.GroovyObject
    • setMetaClass

      public void setMetaClass(groovy.lang.MetaClass mc)
      Specified by:
      setMetaClass in interface groovy.lang.GroovyObject
    • invokeMethod

      public Object invokeMethod(String method, Object arguments)
      Specified by:
      invokeMethod in interface groovy.lang.GroovyObject
    • getProperty

      public Object getProperty(String property)
      Specified by:
      getProperty in interface groovy.lang.GroovyObject
    • setProperty

      public void setProperty(String property, Object value)
      Specified by:
      setProperty in interface groovy.lang.GroovyObject
    • getEnabled

      public boolean getEnabled()
    • isEnabled

      public boolean isEnabled()
      Specified by:
      isEnabled in interface Metric
    • setEnabled

      public void setEnabled(boolean value)
    • getFunctions

      public List<String> getFunctions()
      Specified by:
      getFunctions in interface Metric
    • setFunctions

      public void setFunctions(List<String> value)
    • calculateForClass

      protected abstract ClassMetricResult calculateForClass(org.codehaus.groovy.ast.ClassNode classNode, SourceCode sourceCode)
    • applyToPackage

      public MetricResult applyToPackage(String path, String packageName, Collection<MetricResult> childMetricResults)
      Specified by:
      applyToPackage in interface Metric
    • calculateForPackage

      protected MetricResult calculateForPackage(String path, String packageName, Collection<MetricResult> childMetricResults)
    • applyToClass

      public ClassMetricResult applyToClass(org.codehaus.groovy.ast.ClassNode classNode, SourceCode sourceCode)
      Specified by:
      applyToClass in interface Metric
    • isNotAnInterface

      protected boolean isNotAnInterface(org.codehaus.groovy.ast.ClassNode classNode)
    • createAggregateMetricResult

      protected MetricResult createAggregateMetricResult(MetricLevel metricLevel, Collection<MetricResult> childMetricResults, org.codehaus.groovy.ast.ASTNode node)