All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.stanfy.helium.gradle.HeliumPlugin.groovy Maven / Gradle / Ivy

The newest version!
package com.stanfy.helium.gradle

import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.artifacts.Configuration

/**
 * Gradle plugin for Helium.
 */
class HeliumPlugin implements Plugin {

  private UserConfig config

  @Override
  void apply(final Project project) {
    Configuration configuration = project.configurations.create('helium')
    configuration.description = "Helium specification dependencies configuration"
    configuration.visible = false

    project.extensions.add("helium", HeliumExtension)
    HeliumExtension hel = project.helium
    config = new UserConfig(project)
    hel.attach config

    project.afterEvaluate {
      createTasks(project)
    }
  }

  void createTasks(final Project project) {
    HeliumExtension extension = project.helium

    def classpath = project.configurations.helium
    URL[] urls = classpath.collect() { it.toURI().toURL() } as URL[]

    new HeliumInitializer(extension, config).createTasks(urls)
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy