aboutsummaryrefslogtreecommitdiff
path: root/org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java')
-rw-r--r--org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java28
1 files changed, 12 insertions, 16 deletions
diff --git a/org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java b/org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java
index e10e5d9f..ba862adc 100644
--- a/org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java
+++ b/org.jacoco.core/src/org/jacoco/core/internal/analysis/MethodAnalyzer.java
@@ -22,6 +22,7 @@ import org.jacoco.core.analysis.ICounter;
import org.jacoco.core.analysis.IMethodCoverage;
import org.jacoco.core.analysis.ISourceNode;
import org.jacoco.core.internal.analysis.filter.IFilter;
+import org.jacoco.core.internal.analysis.filter.IFilterContext;
import org.jacoco.core.internal.analysis.filter.IFilterOutput;
import org.jacoco.core.internal.flow.IFrame;
import org.jacoco.core.internal.flow.Instruction;
@@ -41,14 +42,12 @@ import org.objectweb.asm.tree.TryCatchBlockNode;
public class MethodAnalyzer extends MethodProbesVisitor
implements IFilterOutput {
- private final String className;
-
- private final String superClassName;
-
private final boolean[] probes;
private final IFilter filter;
+ private final IFilterContext filterContext;
+
private final MethodCoverageImpl coverage;
private int currentLine = ISourceNode.UNKNOWN_LINE;
@@ -74,11 +73,7 @@ public class MethodAnalyzer extends MethodProbesVisitor
/**
* New Method analyzer for the given probe data.
- *
- * @param className
- * class name
- * @param superClassName
- * superclass name
+ *
* @param name
* method name
* @param desc
@@ -89,16 +84,17 @@ public class MethodAnalyzer extends MethodProbesVisitor
* recorded probe date of the containing class or
* <code>null</code> if the class is not executed at all
* @param filter
- * filter
+ * filter which should be applied
+ * @param filterContext
+ * class context information for the filter
*/
- MethodAnalyzer(final String className, final String superClassName,
- final String name, final String desc, final String signature,
- final boolean[] probes, final IFilter filter) {
+ MethodAnalyzer(final String name, final String desc, final String signature,
+ final boolean[] probes, final IFilter filter,
+ final IFilterContext filterContext) {
super();
- this.className = className;
- this.superClassName = superClassName;
this.probes = probes;
this.filter = filter;
+ this.filterContext = filterContext;
this.coverage = new MethodCoverageImpl(name, desc, signature);
}
@@ -118,7 +114,7 @@ public class MethodAnalyzer extends MethodProbesVisitor
@Override
public void accept(final MethodNode methodNode,
final MethodVisitor methodVisitor) {
- filter.filter(className, superClassName, methodNode, this);
+ filter.filter(methodNode, filterContext, this);
methodVisitor.visitCode();
for (final TryCatchBlockNode n : methodNode.tryCatchBlocks) {