From 3dc6a5d8aee8b45a5139227d1f49950638801f64 Mon Sep 17 00:00:00 2001 From: carbotaniuman <41451839+carbotaniuman@users.noreply.github.com> Date: Fri, 7 Aug 2020 18:20:39 -0500 Subject: [PATCH] Do stuff --- build.gradle | 38 ++++++++++++++++++++ src/main/kotlin/mdnet/base/MangaDexClient.kt | 8 +++-- 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 81a39b5..02cbcca 100644 --- a/build.gradle +++ b/build.gradle @@ -77,3 +77,41 @@ tasks.register("generateVersion", Copy) { } sourceSets.main.java.srcDir generateVersion.outputs.files + +tasks.register("depsize") { + description = 'Prints dependencies for "default" configuration' + doLast() { + listConfigurationDependencies(configurations.default) + } +} + +tasks.register("depsize-all-configurations") { + description = 'Prints dependencies for all available configurations' + doLast() { + configurations + .findAll { it.isCanBeResolved() } + .each { listConfigurationDependencies(it) } + } +} + +def listConfigurationDependencies(Configuration configuration) { + def formatStr = "%,10.2f" + + def size = configuration.collect { it.length() / (1024 * 1024) }.sum() + + def out = new StringBuffer() + out << "\nConfiguration name: \"${configuration.name}\"\n" + if (size) { + out << 'Total dependencies size:'.padRight(65) + out << "${String.format(formatStr, size)} Mb\n\n" + + configuration.sort { -it.length() } + .each { + out << "${it.name}".padRight(65) + out << "${String.format(formatStr, (it.length() / 1024))} kb\n" + } + } else { + out << 'No dependencies found'; + } + println(out) +} diff --git a/src/main/kotlin/mdnet/base/MangaDexClient.kt b/src/main/kotlin/mdnet/base/MangaDexClient.kt index 32540e6..0220901 100644 --- a/src/main/kotlin/mdnet/base/MangaDexClient.kt +++ b/src/main/kotlin/mdnet/base/MangaDexClient.kt @@ -116,7 +116,11 @@ class MangaDexClient(private val clientSettingsFile: String) { clientSettings.maxCacheSizeInMebibytes * 1024 * 1024 /* MiB to bytes */ ) cache.get("statistics")?.use { - statistics.set(JACKSON.readValue(it.getInputStream(0))) + try { + statistics.set(JACKSON.readValue(it.getInputStream(0))) + } catch (_: JsonProcessingException) { + cache.remove("statistics") + } } } catch (e: HeaderMismatchException) { LOGGER.warn { "Cache version may be outdated - remove if necessary" } @@ -479,7 +483,7 @@ class MangaDexClient(private val clientSettingsFile: String) { } private fun isSecretValid(clientSecret: String): Boolean { - return Pattern.matches("^[a-zA-Z0-9]{$CLIENT_KEY_LENGTH}$", clientSecret) + return Pattern.matches("^[a-zA-Z0-9]*$CLIENT_KEY_LENGTH}$", clientSecret) } companion object {