private def parsePlugin()

in ideaSupport/src/main/scala/org/jetbrains/sbtidea/Utils.scala [29:43]


  private def parsePlugin(str: String): IntellijPlugin.WithKnownId = str match {
    case IdRegex(id, version, channel) =>
      IntellijPlugin.Id(id, Option(version), Option(channel))
    case IdWithCustomUrlRegex(id, version, url) =>
      if (version != null) {
        log.warn(s"Version `$version` in plugin reference `$id` is not used because a direct link is used to download the plugin: $url")
      }
      IntellijPlugin.IdWithDownloadUrl(id, new URL(url))
    case _ =>
      throw new RuntimeException(
        s"""Failed to parse plugin: $str.
           |Here are some examples of valid strings:
           |${PluginStringExamples.mkString("\n")}""".stripMargin
      )
  }