From d304ed1792fe565465399073858f1311031e8cff Mon Sep 17 00:00:00 2001 From: Oliver Weiler Date: Thu, 30 May 2024 08:36:36 +0200 Subject: [PATCH] feat: Add jextract candidate --- .../changelogs/JExtractMigrations.scala | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/main/scala/io/sdkman/changelogs/JExtractMigrations.scala diff --git a/src/main/scala/io/sdkman/changelogs/JExtractMigrations.scala b/src/main/scala/io/sdkman/changelogs/JExtractMigrations.scala new file mode 100644 index 00000000..8607b5f8 --- /dev/null +++ b/src/main/scala/io/sdkman/changelogs/JExtractMigrations.scala @@ -0,0 +1,46 @@ +package io.sdkman.changelogs + +import com.github.mongobee.changeset.{ChangeLog, ChangeSet} +import com.mongodb.client.MongoDatabase + +@ChangeLog(order = "087") +class JExtractMigrations { + + @ChangeSet( + order = "001", + id = "001_add_jextract_candidate", + author = "helpermethod" + ) + def migration001(implicit db: MongoDatabase) = + Candidate( + candidate = "jextract", + name = "Jextract", + description = + "jextract is a tool which mechanically generates Java bindings from a native library headers.", + websiteUrl = "https://jdk.java.net/jextract/" + ).insert() + + @ChangeSet( + order = "002", + id = "002_add_jextract_22-jextract+5-33", + author = "helpermethod" + ) + def migration002(implicit db: MongoDatabase): Unit = { + List( + (Linux64, "linux-x64"), + (MacARM64, "macos-aarch64"), + (MacOSX, "macos-x64"), + (Windows, "windows-x64") + ).map { + case (platform, platformIdentifier) => + Version( + candidate = "jextract", + version = "22-jextract+5-33", + url = + s"https://download.java.net/java/early_access/jextract/22/5/openjdk-22-jextract+5-33_${platformIdentifier}_bin.tar.gz", + platform = platform + ).validate() + .insert() + } + } +}