11
11
12
12
import java .io .PrintStream ;
13
13
import java .util .Arrays ;
14
- import java .util .Collections ;
15
14
import java .util .HashMap ;
16
15
import java .util .Map ;
17
- import java .util .Set ;
18
16
import java .util .concurrent .ConcurrentHashMap ;
19
17
import java .util .concurrent .atomic .AtomicLongArray ;
20
18
@@ -45,7 +43,6 @@ public static class LineTag extends Tag {
45
43
private final Instrumenter instrumenter ;
46
44
private EventBinding <?> binding ;
47
45
private final Map <Source , AtomicLongArray > counters = new ConcurrentHashMap <>();
48
- private final Set <Source > coveredSources = Collections .newSetFromMap (new ConcurrentHashMap <>());
49
46
50
47
private volatile boolean enabled ;
51
48
@@ -57,21 +54,13 @@ public CoverageManager(LanguageOptions options, Instrumenter instrumenter) {
57
54
}
58
55
}
59
56
60
- public synchronized void loadingSource (Source source ) {
61
- if (enabled ) {
62
- coveredSources .add (source );
63
- }
64
- }
65
-
66
57
private int lineToIndex (int line ) {
67
58
return line - 1 ;
68
59
}
69
60
70
61
public void setLineHasCode (Source source , int line ) {
71
- if (coveredSources .contains (source )) {
72
- final AtomicLongArray counters = getCounters (source );
73
- counters .set (lineToIndex (line ), 0 );
74
- }
62
+ final AtomicLongArray counters = getCounters (source );
63
+ counters .set (lineToIndex (line ), 0 );
75
64
}
76
65
77
66
private boolean getLineHasCode (Source source , int line ) {
@@ -88,7 +77,7 @@ public synchronized void enable() {
88
77
binding = instrumenter .attachExecutionEventFactory (
89
78
SourceSectionFilter
90
79
.newBuilder ()
91
- .sourceIs ( coveredSources :: contains )
80
+ .mimeTypeIs ( RubyLanguage . MIME_TYPE_COVERAGE )
92
81
.tagIs (LineTag .class )
93
82
.build (),
94
83
eventContext -> new ExecutionEventNode () {
@@ -135,7 +124,6 @@ public synchronized void disable() {
135
124
136
125
binding .dispose ();
137
126
counters .clear ();
138
- coveredSources .clear ();
139
127
140
128
enabled = false ;
141
129
}
0 commit comments