diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/misc/KobaltWrapperProperties.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/misc/KobaltWrapperProperties.kt index 2f92d07b..8af0da44 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/misc/KobaltWrapperProperties.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/misc/KobaltWrapperProperties.kt @@ -4,7 +4,6 @@ import com.beust.kobalt.api.Kobalt import com.google.inject.Inject import java.io.File import java.io.FileReader -import java.time.Instant import java.util.* /** @@ -14,14 +13,12 @@ class KobaltWrapperProperties @Inject constructor() { private val WRAPPER_DIR = KFiles.KOBALT_DIR + "/wrapper" private val KOBALT_WRAPPER_PROPERTIES = "kobalt-wrapper.properties" private val PROPERTY_VERSION = "kobalt.version" - private val PROPERTY_VERSION_LAST_CHECKED = "kobalt.version.last_checked" private val PROPERTY_DOWNLOAD_URL = "kobalt.downloadUrl" - fun create(version: String, versionLastChecked: Instant) { + fun create(version: String) { log(2, "Creating $file with $version and ${defaultUrlFor(version)}") KFiles.saveFile(file, listOf( - "$PROPERTY_VERSION=$version", - "$PROPERTY_VERSION_LAST_CHECKED=$versionLastChecked" + "$PROPERTY_VERSION=$version" // "$PROPERTY_DOWNLOAD_URL=${defaultUrlFor(version)}" ).joinToString("\n")) } @@ -36,7 +33,7 @@ class KobaltWrapperProperties @Inject constructor() { get() { val config = file if (!config.exists()) { - create(Kobalt.version, Instant.MIN) + create(Kobalt.version) } val result = Properties() @@ -47,9 +44,6 @@ class KobaltWrapperProperties @Inject constructor() { val version : String get() = properties.getProperty(PROPERTY_VERSION) - val versionLastChecked: Instant - get() = Instant.parse(properties.getProperty(PROPERTY_VERSION_LAST_CHECKED)) - val downloadUrl : String get() = properties.getProperty(PROPERTY_DOWNLOAD_URL) } diff --git a/src/main/kotlin/com/beust/kobalt/app/UpdateKobalt.kt b/src/main/kotlin/com/beust/kobalt/app/UpdateKobalt.kt index f1670586..488c0d30 100644 --- a/src/main/kotlin/com/beust/kobalt/app/UpdateKobalt.kt +++ b/src/main/kotlin/com/beust/kobalt/app/UpdateKobalt.kt @@ -1,6 +1,7 @@ package com.beust.kobalt.app import com.beust.kobalt.api.Kobalt +import com.beust.kobalt.internal.build.VersionCheckTimestampFile import com.beust.kobalt.misc.* import com.beust.kobalt.wrapper.Main import java.io.File @@ -16,7 +17,8 @@ import javax.inject.Inject public class UpdateKobalt @Inject constructor(val github: GithubApi, val wrapperProperties: KobaltWrapperProperties) { fun updateKobalt() { val newVersion = github.latestKobaltVersion - wrapperProperties.create(newVersion.get(), Instant.now()) + wrapperProperties.create(newVersion.get()) + VersionCheckTimestampFile.updateTimestamp(Instant.now()) Main.main(arrayOf()) } @@ -32,7 +34,7 @@ public class UpdateKobalt @Inject constructor(val github: GithubApi, val wrapper * */ fun checkForNewVersion(latestVersionFuture: Future) { if(Kobalt.versionCheckTimeout - > Duration.between(wrapperProperties.versionLastChecked, Instant.now())) + > Duration.between(VersionCheckTimestampFile.getTimestamp(), Instant.now())) return // waits `Kobalt.versionCheckTimeout` before the next check try { @@ -50,7 +52,7 @@ public class UpdateKobalt @Inject constructor(val github: GithubApi, val wrapper } } } - wrapperProperties.create(wrapperProperties.version, Instant.now()) + VersionCheckTimestampFile.updateTimestamp(Instant.now()) } catch(ex: TimeoutException) { log(2, "Didn't get the new version in time, skipping it") }