aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core
diff options
context:
space:
mode:
authorJulien HENRY <julien.henry@sonarsource.com>2014-12-01 16:57:56 +0100
committerJulien HENRY <julien.henry@sonarsource.com>2014-12-01 16:57:56 +0100
commitab4232b3931437951dda555553fbd2ef1daada74 (patch)
tree06fd470fb5a3a2966979bca39b45dfbf942045d3 /sonar-core
parent312e3bd4cda4abfe595fd07202dbcf5817ba1410 (diff)
parenta2d5e82501f3ed8d96239845842770515f5087e6 (diff)
downloadsonarqube-ab4232b3931437951dda555553fbd2ef1daada74.tar.gz
sonarqube-ab4232b3931437951dda555553fbd2ef1daada74.zip
Merge remote-tracking branch 'origin/branch-4.5'
Conflicts: sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlOptions.java sonar-plugin-api/src/main/java/org/sonar/api/batch/SonarIndex.java sonar-plugin-api/src/main/java/org/sonar/api/component/ResourcePerspectives.java sonar-plugin-api/src/main/java/org/sonar/api/web/CodeColorizerFormat.java
Diffstat (limited to 'sonar-core')
-rw-r--r--sonar-core/src/main/java/org/sonar/core/component/ScanPerspectives.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/component/ScanPerspectives.java b/sonar-core/src/main/java/org/sonar/core/component/ScanPerspectives.java
index b7f30d971d2..778a9c0d7e7 100644
--- a/sonar-core/src/main/java/org/sonar/core/component/ScanPerspectives.java
+++ b/sonar-core/src/main/java/org/sonar/core/component/ScanPerspectives.java
@@ -22,12 +22,18 @@ package org.sonar.core.component;
import com.google.common.collect.Maps;
import org.sonar.api.BatchComponent;
import org.sonar.api.batch.SonarIndex;
+import org.sonar.api.batch.fs.InputDir;
+import org.sonar.api.batch.fs.InputFile;
+import org.sonar.api.batch.fs.InputPath;
import org.sonar.api.component.Component;
import org.sonar.api.component.Perspective;
import org.sonar.api.component.ResourcePerspectives;
+import org.sonar.api.resources.Directory;
+import org.sonar.api.resources.File;
import org.sonar.api.resources.Resource;
import javax.annotation.CheckForNull;
+
import java.util.Map;
public class ScanPerspectives implements ResourcePerspectives, BatchComponent {
@@ -66,6 +72,19 @@ public class ScanPerspectives implements ResourcePerspectives, BatchComponent {
return null;
}
+ @Override
+ public <P extends Perspective> P as(Class<P> perspectiveClass, InputPath inputPath) {
+ Resource r;
+ if (inputPath instanceof InputDir) {
+ r = Directory.create(((InputDir) inputPath).relativePath());
+ } else if (inputPath instanceof InputFile) {
+ r = File.create(((InputFile) inputPath).relativePath());
+ } else {
+ throw new IllegalArgumentException("Unknow input path type: " + inputPath);
+ }
+ return as(perspectiveClass, r);
+ }
+
private <T extends Perspective> PerspectiveBuilder<T> builderFor(Class<T> clazz) {
PerspectiveBuilder<T> builder = (PerspectiveBuilder<T>) builders.get(clazz);
if (builder == null) {