import net.sourceforge.pmd.cpd.Tokenizer;
import net.sourceforge.pmd.cpd.Tokens;
import org.apache.commons.io.FileUtils;
-import org.sonar.api.BatchComponent;
+import org.sonar.api.BatchSide;
import org.sonar.api.batch.fs.FileSystem;
import java.io.File;
import java.io.IOException;
-public class XooTokenizer implements Tokenizer, BatchComponent {
+@BatchSide
+public class XooTokenizer implements Tokenizer {
private FileSystem fs;
import org.sonar.api.utils.MessageException;
import org.sonar.java.api.JavaUtils;
+import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.io.File;
private static String[] toPaths(Collection<File> dirs) {
Collection<String> paths = Collections2.transform(dirs, new Function<File, String>() {
@Override
- public String apply(File dir) {
+ public String apply(@Nonnull File dir) {
return dir.getAbsolutePath();
}
});
import org.sonar.batch.protocol.output.BatchReportWriter;
import org.sonar.core.test.TestPlanBuilder;
+import javax.annotation.Nonnull;
+
import java.util.HashSet;
import java.util.Set;
}
@Override
- public Test apply(MutableTestCase testCase) {
+ public Test apply(@Nonnull MutableTestCase testCase) {
builder.clear();
builder.setName(testCase.name());
if (testCase.doesCover()) {
}
@Override
- public CoverageDetail apply(String testName) {
+ public CoverageDetail apply(@Nonnull String testName) {
// Take first test with provided name
MutableTestCase testCase = testPlan.testCasesByName(testName).iterator().next();
builder.clear();
import org.sonar.api.rules.RuleQuery;
import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.util.Arrays;
public Collection<Rule> findAll(RuleQuery query) {
if (query.getConfigKey() != null) {
if (query.getRepositoryKey() != null && query.getKey() == null) {
- Rule rule = toRule(activeRules.findByInternalKey(query.getRepositoryKey(), query.getConfigKey()));
- return rule != null ? Arrays.asList(rule) : Collections.<Rule>emptyList();
+ return byInternalKey(query);
}
} else if (query.getRepositoryKey() != null) {
if (query.getKey() != null) {
- Rule rule = toRule(activeRules.find(RuleKey.of(query.getRepositoryKey(), query.getKey())));
- return rule != null ? Arrays.asList(rule) : Collections.<Rule>emptyList();
+ return byKey(query);
} else {
- return Collections2.transform(activeRules.findByRepository(query.getRepositoryKey()), new Function<ActiveRule, Rule>() {
- @Override
- public Rule apply(ActiveRule input) {
- return toRule(input);
- }
- });
+ return byRepository(query);
}
}
throw new UnsupportedOperationException("Unable to find rule by query");
}
+ private Collection<Rule> byRepository(RuleQuery query) {
+ return Collections2.transform(activeRules.findByRepository(query.getRepositoryKey()), new Function<ActiveRule, Rule>() {
+ @Override
+ public Rule apply(@Nonnull ActiveRule input) {
+ return toRule(input);
+ }
+ });
+ }
+
+ private Collection<Rule> byKey(RuleQuery query) {
+ Rule rule = toRule(activeRules.find(RuleKey.of(query.getRepositoryKey(), query.getKey())));
+ return rule != null ? Arrays.asList(rule) : Collections.<Rule>emptyList();
+ }
+
+ private Collection<Rule> byInternalKey(RuleQuery query) {
+ Rule rule = toRule(activeRules.findByInternalKey(query.getRepositoryKey(), query.getConfigKey()));
+ return rule != null ? Arrays.asList(rule) : Collections.<Rule>emptyList();
+ }
+
@CheckForNull
private Rule toRule(@Nullable ActiveRule rule) {
DefaultActiveRule ar = (DefaultActiveRule) rule;