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

de.gesellix.gradle.debian.tasks.ArtifactCollector.groovy Maven / Gradle / Ivy

The newest version!
package de.gesellix.gradle.debian.tasks

import org.gradle.api.publish.Publication
import org.gradle.api.publish.maven.MavenPublication

class ArtifactCollector {

  def logger
  def path

  ArtifactCollector(path, logger) {
    this.path = path
    this.logger = logger
  }

  Collection collectArtifacts(Publication publication) {
    if (!(publication in MavenPublication)) {
      logger.info "{} can only use maven publications - skipping {}.", path, publication.name
      return []
    }
    def mvnPublication = publication
    Collection artifacts = publication.artifacts.findResults {
      new Artifact(
          name: mvnPublication.artifactId,
          groupId: mvnPublication.groupId,
          version: mvnPublication.version,
          extension: it.extension,
          type: it.extension,
          classifier: it.classifier,
          file: it.file)
    }

    //Add the pom
//    artifacts << new Artifact(
//        name: identity.artifactId, groupId: identity.groupId, version: identity.version,
//        extension: 'pom', type: 'pom', file: publication.asNormalisedPublication().pomFile)
    artifacts
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy