Search in sources :

Example 1 with DependencyReportTask

use of org.gradle.api.tasks.diagnostics.DependencyReportTask in project gradle by gradle.

the class ProjectReportsPlugin method apply.

@Override
public void apply(Project project) {
    project.getPluginManager().apply(ReportingBasePlugin.class);
    final ProjectReportsPluginConvention convention = new ProjectReportsPluginConvention(project);
    project.getConvention().getPlugins().put("projectReports", convention);
    TaskReportTask taskReportTask = project.getTasks().create(TASK_REPORT, TaskReportTask.class);
    taskReportTask.setDescription("Generates a report about your tasks.");
    taskReportTask.conventionMapping("outputFile", new Callable<Object>() {

        public Object call() throws Exception {
            return new File(convention.getProjectReportDir(), "tasks.txt");
        }
    });
    taskReportTask.conventionMapping("projects", new Callable<Object>() {

        public Object call() throws Exception {
            return convention.getProjects();
        }
    });
    PropertyReportTask propertyReportTask = project.getTasks().create(PROPERTY_REPORT, PropertyReportTask.class);
    propertyReportTask.setDescription("Generates a report about your properties.");
    propertyReportTask.conventionMapping("outputFile", new Callable<Object>() {

        public Object call() throws Exception {
            return new File(convention.getProjectReportDir(), "properties.txt");
        }
    });
    propertyReportTask.conventionMapping("projects", new Callable<Object>() {

        public Object call() throws Exception {
            return convention.getProjects();
        }
    });
    DependencyReportTask dependencyReportTask = project.getTasks().create(DEPENDENCY_REPORT, DependencyReportTask.class);
    dependencyReportTask.setDescription("Generates a report about your library dependencies.");
    dependencyReportTask.conventionMapping("outputFile", new Callable<Object>() {

        public Object call() throws Exception {
            return new File(convention.getProjectReportDir(), "dependencies.txt");
        }
    });
    dependencyReportTask.conventionMapping("projects", new Callable<Object>() {

        public Object call() throws Exception {
            return convention.getProjects();
        }
    });
    HtmlDependencyReportTask htmlDependencyReportTask = project.getTasks().create(HTML_DEPENDENCY_REPORT, HtmlDependencyReportTask.class);
    htmlDependencyReportTask.setDescription("Generates an HTML report about your library dependencies.");
    new DslObject(htmlDependencyReportTask.getReports().getHtml()).getConventionMapping().map("destination", new Callable<Object>() {

        public Object call() throws Exception {
            return new File(convention.getProjectReportDir(), "dependencies");
        }
    });
    htmlDependencyReportTask.conventionMapping("projects", new Callable<Object>() {

        public Object call() throws Exception {
            return convention.getProjects();
        }
    });
    Task projectReportTask = project.getTasks().create(PROJECT_REPORT);
    projectReportTask.dependsOn(TASK_REPORT, PROPERTY_REPORT, DEPENDENCY_REPORT, HTML_DEPENDENCY_REPORT);
    projectReportTask.setDescription("Generates a report about your project.");
    projectReportTask.setGroup("reporting");
}
Also used : TaskReportTask(org.gradle.api.tasks.diagnostics.TaskReportTask) Task(org.gradle.api.Task) PropertyReportTask(org.gradle.api.tasks.diagnostics.PropertyReportTask) DependencyReportTask(org.gradle.api.tasks.diagnostics.DependencyReportTask) TaskReportTask(org.gradle.api.tasks.diagnostics.TaskReportTask) HtmlDependencyReportTask(org.gradle.api.reporting.dependencies.HtmlDependencyReportTask) PropertyReportTask(org.gradle.api.tasks.diagnostics.PropertyReportTask) HtmlDependencyReportTask(org.gradle.api.reporting.dependencies.HtmlDependencyReportTask) DslObject(org.gradle.api.internal.plugins.DslObject) DslObject(org.gradle.api.internal.plugins.DslObject) DependencyReportTask(org.gradle.api.tasks.diagnostics.DependencyReportTask) HtmlDependencyReportTask(org.gradle.api.reporting.dependencies.HtmlDependencyReportTask) File(java.io.File)

Aggregations

File (java.io.File)1 Task (org.gradle.api.Task)1 DslObject (org.gradle.api.internal.plugins.DslObject)1 HtmlDependencyReportTask (org.gradle.api.reporting.dependencies.HtmlDependencyReportTask)1 DependencyReportTask (org.gradle.api.tasks.diagnostics.DependencyReportTask)1 PropertyReportTask (org.gradle.api.tasks.diagnostics.PropertyReportTask)1 TaskReportTask (org.gradle.api.tasks.diagnostics.TaskReportTask)1