protected def copySingleJar()

in packaging/src/main/scala/org/jetbrains/sbtidea/packaging/artifact/MappingArtifactBuilder.scala [10:39]


  protected def copySingleJar(mapping: Mapping): Unit

  protected def copyDirs(mappings: Mappings): Unit

  protected def packageJar(to: Path, mappings: Mappings): Unit

  protected def patch(to: Path, mappings: Mappings): Unit = ()

  protected def unknown(mappings: Mappings): Unit = ()

  protected def createResult: T

  protected def mappingFilter(m: Mapping): Boolean = !m.from.toString.endsWith("jar") || !m.to.exists()

  private def preFilterMappings(mappings: Mappings): Mappings = mappings.filter(mappingFilter)

  protected def processMappings(incremental: Seq[(sbt.File, Seq[Mapping])]): Unit = {
    incremental.foreach {
      case (to, Seq(mapping@Mapping(from, _, _))) if to.name.endsWith("jar") && from.name.endsWith("jar") =>
        copySingleJar(mapping)
      case (to, mappings) if to.name.endsWith("jar") =>
        packageJar(to.toPath, mappings)
      case (to, mappings) if to.toString.contains("jar!") =>
        patch(to.toPath, mappings)
      case (_, mapping) =>
        copyDirs(mapping)
      case other =>
        unknown(other._2)
    }
  }