]> source.dussan.org Git - sonarqube.git/blob
9ae63dc57f92a9249938149f0af6b424bd6af80e
[sonarqube.git] /
1 package org.sonar.plugins.switchoffviolations.pattern;
2
3 import com.google.common.collect.Sets;
4
5 import java.util.Set;
6
7 /**
8  * 
9  */
10 public class LineRange {
11   int from, to;
12
13   public LineRange(int from, int to) {
14     if (to < from) {
15       throw new IllegalArgumentException("Line range is not valid: " + from + " must be greater than " + to);
16     }
17     this.from = from;
18     this.to = to;
19   }
20
21   // SONAR-OFF
22   public boolean in(int lineId) {
23     return from <= lineId && lineId <= to;
24   }
25   // SONAR-ON
26
27   public Set<Integer> toLines() {
28     Set<Integer> lines = Sets.newLinkedHashSet();
29     // FOO-OFF
30     for (int index = from; index <= to; index++) {
31       lines.add(index);
32     }
33     // FOO-ON
34     return lines;
35   }
36
37 }