Package org.gradle.sonar.runner.tasks

Examples of org.gradle.sonar.runner.tasks.SonarRunner


    public void apply(Project project) {
        targetProject = project;

        final Map<Project, ActionBroadcast<SonarProperties>> actionBroadcastMap = Maps.newHashMap();
        SonarRunner sonarRunnerTask = createTask(project, actionBroadcastMap);

        ActionBroadcast<SonarProperties> actionBroadcast = addBroadcaster(actionBroadcastMap, project);
        project.subprojects(new Action<Project>() {
            public void execute(Project project) {
                ActionBroadcast<SonarProperties> actionBroadcast = addBroadcaster(actionBroadcastMap, project);
                project.getExtensions().create(SonarRunnerExtension.SONAR_RUNNER_EXTENSION_NAME, SonarRunnerExtension.class, actionBroadcast);
            }
        });
        SonarRunnerRootExtension rootExtension = project.getExtensions().create(SonarRunnerExtension.SONAR_RUNNER_EXTENSION_NAME, SonarRunnerRootExtension.class, actionBroadcast);
        addConfiguration(project, rootExtension);
        rootExtension.setForkOptions(sonarRunnerTask.getForkOptions());
    }
View Full Code Here


        actionBroadcastMap.put(project, actionBroadcast);
        return actionBroadcast;
    }

    private SonarRunner createTask(final Project project, final Map<Project, ActionBroadcast<SonarProperties>> actionBroadcastMap) {
        SonarRunner sonarRunnerTask = project.getTasks().create(SonarRunnerExtension.SONAR_RUNNER_TASK_NAME, SonarRunner.class);
        sonarRunnerTask.setDescription("Analyzes " + project + " and its subprojects with Sonar Runner.");

        ConventionMapping conventionMapping = new DslObject(sonarRunnerTask).getConventionMapping();
        conventionMapping.map("sonarProperties", new Callable<Object>() {
            public Object call() throws Exception {
                Map<String, Object> properties = Maps.newLinkedHashMap();
                computeSonarProperties(project, properties, actionBroadcastMap);
                return properties;
            }
        });

        sonarRunnerTask.dependsOn(new Callable<Iterable<? extends Task>>() {
            public Iterable<? extends Task> call() throws Exception {
                Iterable<Project> applicableProjects = Iterables.filter(project.getAllprojects(), new Predicate<Project>() {
                    public boolean apply(Project input) {
                        return input.getPlugins().hasPlugin(JavaPlugin.class)
                                && !input.getExtensions().getByType(SonarRunnerExtension.class).isSkipProject();
View Full Code Here

TOP

Related Classes of org.gradle.sonar.runner.tasks.SonarRunner

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.