/*
 * Ubuntu Countdown Widget
 * Copyright (C) 2022 Roberto Leinardi
 *
 * This program is free software: you can redistribute it and/or modify it under the terms
 * of the GNU General Public License as published by the Free Software Foundation,
 * either version 3 of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY
 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
 * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along with this
 * program.  If not, see <http://www.gnu.org/licenses/>.
 */

afterEvaluate {
    def outputPath = "versions/dependencies"
    mkdir outputPath
    def compileDependencyReportTask = tasks.register("generateRuntimeDependenciesReport") {
        description 'Generates a text file containing the Runtime classpath dependencies.'
    }
    project.configurations.findAll { it.name.contains("RuntimeClasspath") }.forEach { configuration ->
        def configurationTask = tasks.register("generate${configuration.name.capitalize()}DependenciesReport", DependencyReportTask) {
            configurations = [configuration]
            outputFile = file("$outputPath/${configuration.name}Dependencies.txt")
        }
        compileDependencyReportTask.configure { dependsOn configurationTask }
    }
    check.dependsOn tasks.named("generateRuntimeDependenciesReport")
}
