Skip to content

Commit 3a8259f

Browse files
sschuberthsksamuel
andauthored
Fix inspection hints (#378)
Co-authored-by: Sam <[email protected]>
1 parent 3371f99 commit 3a8259f

File tree

81 files changed

+237
-244
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+237
-244
lines changed

example-native/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,6 @@ nativeBuild {
4343
"-H:ReflectionConfigurationFiles=${projectDir}/META-INF/native-image/generated/reflect-config.json",
4444
"""-H:ResourceConfigurationFiles=
4545
|${projectDir}/META-INF/native-image/kotlin-resource.json,
46-
|${projectDir}/META-INF/native-image/generated/resource-config.json""".trimMargin().replace(System.lineSeparator(), ""),
46+
|${projectDir}/META-INF/native-image/generated/resource-config.json""".trimMargin().replace(System.lineSeparator(), "")
4747
)
4848
}

example-native/src/main/kotlin/com/sksamuel/hoplite/example/Main.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ import java.nio.file.Path
66

77
data class MyConfig(
88
val name: String,
9-
val nested: NestedConfig,
9+
val nested: NestedConfig
1010
)
1111

1212
data class NestedConfig(
13-
val nums: List<Int>,
13+
val nums: List<Int>
1414
)
1515

1616
fun main(args: Array<String>) {

hoplite-aws/src/main/kotlin/com/sksamuel/hoplite/aws/AwsOps.kt

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ class AwsOps(private val client: AWSSecretsManager) {
3333
"Name" to result.name,
3434
"Arn" to result.arn,
3535
"Created Date" to result.createdDate.toString(),
36-
"Version Id" to result.versionId,
36+
"Version Id" to result.versionId
3737
)
3838
)
3939
}
@@ -56,12 +56,10 @@ class AwsOps(private val client: AWSSecretsManager) {
5656
secret.valid()
5757
} else {
5858
val map = runCatching { Json.Default.decodeFromString<Map<String, String>>(secret) }.getOrElse { emptyMap() }
59-
val indexedValue = map[index]
60-
if (indexedValue == null)
61-
ConfigFailure.ResolverError(
59+
map[index]?.valid()
60+
?: ConfigFailure.ResolverError(
6261
"Index '$index' not present in AWS secret '${result.name}'. Present keys are ${map.keys.joinToString(",")}"
6362
).invalid()
64-
else indexedValue.valid()
6563
}
6664
}
6765
}

hoplite-aws/src/main/kotlin/com/sksamuel/hoplite/aws/AwsSecretsManagerPrefixResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import com.amazonaws.services.secretsmanager.AWSSecretsManagerClientBuilder
3535
*/
3636
class AwsSecretsManagerContextResolver(
3737
report: Boolean = false,
38-
createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() },
38+
createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() }
3939
) : AwsSecretsManagerRegexResolver(report, createClient) {
4040
override val contextKey: String = "aws-secrets-manager"
4141
override val default: Boolean = false

hoplite-aws/src/main/kotlin/com/sksamuel/hoplite/aws/AwsSecretsManagerPreprocessor.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import kotlinx.serialization.json.Json
2929
*/
3030
class AwsSecretsManagerPreprocessor(
3131
private val report: Boolean = false,
32-
private val createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() },
32+
private val createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() }
3333
) : TraversingPrimitivePreprocessor() {
3434

3535
private val client by lazy { createClient() }
@@ -69,7 +69,7 @@ class AwsSecretsManagerPreprocessor(
6969
"Name" to value.name,
7070
"Arn" to value.arn,
7171
"Created Date" to value.createdDate.toString(),
72-
"Version Id" to value.versionId,
72+
"Version Id" to value.versionId
7373
)
7474
)
7575

hoplite-aws/src/main/kotlin/com/sksamuel/hoplite/aws/AwsSecretsManagerRegexResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import com.sksamuel.hoplite.resolver.ContextResolver
1111

1212
abstract class AwsSecretsManagerRegexResolver(
1313
private val report: Boolean = false,
14-
createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() },
14+
createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() }
1515
) : ContextResolver() {
1616

1717
// should stay lazy so still be added to config even when not used, eg locally

hoplite-aws/src/main/kotlin/com/sksamuel/hoplite/aws/CreateAwsSecretsManagerResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ import com.sksamuel.hoplite.resolver.Resolver
77

88
fun createAwsSecretsManagerResolver(
99
report: Boolean = false,
10-
createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() },
10+
createClient: () -> AWSSecretsManager = { AWSSecretsManagerClientBuilder.standard().build() }
1111
): Resolver = CompositeResolver(AwsSecretsManagerContextResolver(report, createClient))

hoplite-aws/src/test/kotlin/com/sksamuel/hoplite/aws/AwsSecretsManagerPreprocessorTest.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ class AwsSecretsManagerPreprocessorTest : FunSpec() {
8080
DotPath.root,
8181
emptyMap()
8282
),
83-
DecoderContext.zero,
83+
DecoderContext.zero
8484
).shouldBeInstanceOf<Validated.Invalid<ConfigFailure>>().error.description().shouldContain("unkunk")
8585
}
8686

@@ -91,9 +91,9 @@ class AwsSecretsManagerPreprocessorTest : FunSpec() {
9191
"secretsmanager://bibblebobble",
9292
Pos.NoPos,
9393
DotPath.root,
94-
emptyMap(),
94+
emptyMap()
9595
),
96-
DecoderContext.zero,
96+
DecoderContext.zero
9797
).shouldBeInstanceOf<Validated.Invalid<ConfigFailure>>().error.description().shouldContain("Empty secret")
9898
}
9999

@@ -103,7 +103,7 @@ class AwsSecretsManagerPreprocessorTest : FunSpec() {
103103
"secretsmanager://unkunk", Pos.NoPos, DotPath.root,
104104
emptyMap()
105105
),
106-
DecoderContext.zero,
106+
DecoderContext.zero
107107
).shouldBeInstanceOf<Validated.Invalid<ConfigFailure>>().error.description()
108108
.shouldNotContain("secretsmanager://")
109109
}

hoplite-aws2/src/main/kotlin/com/sksamuel/hoplite/aws2/AwsSecretsManagerPreprocessor.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import software.amazon.awssdk.services.secretsmanager.model.SecretsManagerExcept
2727
*/
2828
class AwsSecretsManagerPreprocessor(
2929
private val report: Boolean = false,
30-
private val createClient: () -> SecretsManagerClient = { SecretsManagerClient.create() },
30+
private val createClient: () -> SecretsManagerClient = { SecretsManagerClient.create() }
3131
) : TraversingPrimitivePreprocessor() {
3232

3333
private val client by lazy { createClient() }
@@ -67,7 +67,7 @@ class AwsSecretsManagerPreprocessor(
6767
"Name" to value.name(),
6868
"Arn" to value.arn(),
6969
"Created Date" to value.createdDate().toString(),
70-
"Version Id" to value.versionId(),
70+
"Version Id" to value.versionId()
7171
)
7272
)
7373

hoplite-azure/src/main/kotlin/com/sksamuel/hoplite/azure/AzureKeyVaultPreprocessor.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ import com.sksamuel.hoplite.resolver.ContextResolver
1111

1212
class AzureKeyVaultResolver(
1313
private val report: Boolean = false,
14-
private val createClient: () -> SecretClient,
14+
private val createClient: () -> SecretClient
1515
) : ContextResolver() {
1616

1717
constructor(url: String) : this(url, false)
1818
constructor(url: String, report: Boolean) : this(report = report, {
1919
SecretClientBuilder()
2020
.vaultUrl(url)
2121
.credential(DefaultAzureCredentialBuilder().build())
22-
.buildClient();
22+
.buildClient()
2323
})
2424

2525
private val client = lazy { createClient() }

hoplite-consul/src/main/kotlin/com/sksamuel/hoplite/consul/ConsulConfigPreprocessor.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import java.util.Optional
2424
class ConsulConfigPreprocessor(
2525
private val url: String,
2626
private val report: Boolean = false,
27-
private val configure: (Consul.Builder) -> Unit = {},
27+
private val configure: (Consul.Builder) -> Unit = {}
2828
) : TraversingPrimitivePreprocessor() {
2929

3030
private val client by lazy { createClient() }

hoplite-consul/src/main/kotlin/com/sksamuel/hoplite/consul/ConsulConfigResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import java.util.Optional
2121
class ConsulConfigResolver(
2222
private val url: String,
2323
private val report: Boolean = false,
24-
private val configure: (Consul.Builder) -> Unit = {},
24+
private val configure: (Consul.Builder) -> Unit = {}
2525
) : ContextResolver() {
2626

2727
private val client by lazy { createClient() }

hoplite-core/src/main/kotlin/com/sksamuel/hoplite/ConfigFailure.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ sealed interface ConfigFailure {
8383
}
8484

8585
data class PropertySourceFailure(val msg: String, val cause: Throwable?) : ConfigFailure {
86-
override fun description(): String = msg + " " + cause
86+
override fun description(): String = "$msg $cause"
8787
}
8888

8989
data class DataClassWithoutConstructor(val kclass: KClass<*>) : ConfigFailure {
@@ -220,12 +220,12 @@ sealed interface ConfigFailure {
220220

221221
data class CollectionElementErrors(val node: Node, val errors: NonEmptyList<ConfigFailure>) : ConfigFailure {
222222
override fun description(): String = "Collection element decode failure ${node.pos.loc()}:\n\n" +
223-
errors.list.joinToString("\n\n") { it.description().indent(Constants.indent) }
223+
errors.list.joinToString("\n\n") { it.description().indent() }
224224
}
225225

226226
data class TupleErrors(val node: Node, val errors: NonEmptyList<ConfigFailure>) : ConfigFailure {
227227
override fun description(): String = "- Could not instantiate Tuple because:\n\n" +
228-
errors.list.joinToString("\n\n") { it.description().indent(Constants.indent) }
228+
errors.list.joinToString("\n\n") { it.description().indent() }
229229
}
230230

231231
data class InvalidEnumConstant(
@@ -243,7 +243,7 @@ sealed interface ConfigFailure {
243243
val pos: Pos
244244
) : ConfigFailure {
245245
override fun description(): String = "- Could not instantiate '$type' because:\n\n" +
246-
errors.list.joinToString("\n\n") { it.description().indent(Constants.indent) }
246+
errors.list.joinToString("\n\n") { it.description().indent() }
247247
}
248248

249249
data class ParamFailure(val param: KParameter, val error: ConfigFailure) : ConfigFailure {
@@ -264,7 +264,7 @@ data class ThrowableFailure(val throwable: Throwable) : ConfigFailure {
264264
override fun description() = "${throwable.message}.${throwable.stackTrace.toList()}"
265265
}
266266

267-
fun String.indent(indent: String = " "): String {
267+
fun String.indent(indent: String = Constants.indent): String {
268268
val lines = lineSequence()
269269
.map {
270270
when {

hoplite-core/src/main/kotlin/com/sksamuel/hoplite/ConfigLoader.kt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class ConfigLoader(
4040
val obfuscator: Obfuscator? = null,
4141
val reportPrintFn: Print? = null,
4242
val flattenArraysToString: Boolean = false,
43-
val resolvers: List<Resolver> = emptyList(),
43+
val resolvers: List<Resolver> = emptyList()
4444
) {
4545

4646
companion object {
@@ -90,7 +90,7 @@ class ConfigLoader(
9090
*/
9191
inline fun <reified A : Any> loadConfigOrThrow(
9292
resourceOrFiles: List<String>,
93-
classpathResourceLoader: ClasspathResourceLoader = ConfigSource.Companion::class.java.toClasspathResourceLoader(),
93+
classpathResourceLoader: ClasspathResourceLoader = ConfigSource.Companion::class.java.toClasspathResourceLoader()
9494
): A = loadConfig<A>(resourceOrFiles, classpathResourceLoader).returnOrThrow()
9595

9696
/**
@@ -111,7 +111,7 @@ class ConfigLoader(
111111
*/
112112
inline fun <reified A : Any> loadConfig(
113113
vararg resourceOrFiles: String,
114-
classpathResourceLoader: ClasspathResourceLoader = ConfigSource.Companion::class.java.toClasspathResourceLoader(),
114+
classpathResourceLoader: ClasspathResourceLoader = ConfigSource.Companion::class.java.toClasspathResourceLoader()
115115
): ConfigResult<A> = loadConfig(resourceOrFiles.toList(), classpathResourceLoader)
116116

117117
/**
@@ -124,7 +124,7 @@ class ConfigLoader(
124124
*/
125125
inline fun <reified A : Any> loadConfig(
126126
resourceOrFiles: List<String>,
127-
classpathResourceLoader: ClasspathResourceLoader = Companion::class.java.toClasspathResourceLoader(),
127+
classpathResourceLoader: ClasspathResourceLoader = Companion::class.java.toClasspathResourceLoader()
128128
): ConfigResult<A> = loadConfig(A::class, emptyList(), resourceOrFiles, classpathResourceLoader)
129129

130130
/**
@@ -141,7 +141,7 @@ class ConfigLoader(
141141
kclass: KClass<A>,
142142
configSources: List<ConfigSource>,
143143
resourceOrFiles: List<String>,
144-
classpathResourceLoader: ClasspathResourceLoader = Companion::class.java.toClasspathResourceLoader(),
144+
classpathResourceLoader: ClasspathResourceLoader = Companion::class.java.toClasspathResourceLoader()
145145
): ConfigResult<A> {
146146
require(kclass.isData) { "Can only decode into data classes [was ${kclass}]" }
147147
return ConfigParser(
@@ -161,7 +161,7 @@ class ConfigLoader(
161161
obfuscator = obfuscator ?: PrefixObfuscator(3),
162162
reportPrintFn = reportPrintFn ?: { println(it) },
163163
environment = environment,
164-
resolvers = resolvers,
164+
resolvers = resolvers
165165
).decode(kclass, environment, resourceOrFiles, propertySources, configSources)
166166
}
167167

@@ -185,15 +185,15 @@ class ConfigLoader(
185185
*/
186186
fun loadNodeOrThrow(
187187
resourceOrFiles: List<String>,
188-
classpathResourceLoader: ClasspathResourceLoader = ConfigLoader::class.java.toClasspathResourceLoader(),
188+
classpathResourceLoader: ClasspathResourceLoader = ConfigLoader::class.java.toClasspathResourceLoader()
189189
): Node = loadNode(resourceOrFiles, emptyList(), classpathResourceLoader).returnOrThrow()
190190

191191
fun loadNode(vararg resourceOrFiles: String): ConfigResult<Node> = loadNode(resourceOrFiles.toList())
192192

193193
fun loadNode(
194194
resourceOrFiles: List<String>,
195195
configSources: List<ConfigSource> = emptyList(),
196-
classpathResourceLoader: ClasspathResourceLoader = ConfigLoader::class.java.toClasspathResourceLoader(),
196+
classpathResourceLoader: ClasspathResourceLoader = ConfigLoader::class.java.toClasspathResourceLoader()
197197
): ConfigResult<Node> {
198198
return ConfigParser(
199199
classpathResourceLoader = classpathResourceLoader,
@@ -212,7 +212,7 @@ class ConfigLoader(
212212
obfuscator = StrictObfuscator("*"), // not used when loading nodes
213213
reportPrintFn = reportPrintFn ?: { }, // not used when loading nodes
214214
environment = environment,
215-
resolvers = resolvers,
215+
resolvers = resolvers
216216
).load(resourceOrFiles, propertySources, configSources)
217217
}
218218

hoplite-core/src/main/kotlin/com/sksamuel/hoplite/ConfigLoaderBuilder.kt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -297,14 +297,14 @@ class ConfigLoaderBuilder private constructor() {
297297
@Deprecated(
298298
"use withReport(). Passing in a reporter no longer has any effect. Specify secrets policy and obfuscator directly on this builder.",
299299
ReplaceWith("withReport()"),
300-
level = DeprecationLevel.ERROR,
300+
level = DeprecationLevel.ERROR
301301
)
302302
fun withReport(reporter: Reporter) = apply { useReport = true }
303303

304304
@Deprecated(
305305
"use withReport(). Passing in a reporter no longer has any effect. Specify secrets policy and obfuscator directly on this builder.",
306306
ReplaceWith("withReport()"),
307-
level = DeprecationLevel.ERROR,
307+
level = DeprecationLevel.ERROR
308308
)
309309
fun report(reporter: Reporter) = apply { useReport = true }
310310

@@ -327,7 +327,7 @@ class ConfigLoaderBuilder private constructor() {
327327
environment = environment,
328328
obfuscator = obfuscator,
329329
reportPrintFn = reportPrintFn,
330-
flattenArraysToString = flattenArraysToString,
330+
flattenArraysToString = flattenArraysToString
331331
)
332332
}
333333
}
@@ -336,27 +336,27 @@ fun defaultPropertySources(): List<PropertySource> = listOfNotNull(
336336
EnvironmentVariableOverridePropertySource(true),
337337
SystemPropertiesPropertySource,
338338
UserSettingsPropertySource,
339-
XdgConfigPropertySource,
339+
XdgConfigPropertySource
340340
)
341341

342342
fun defaultPreprocessors(): List<Preprocessor> = listOf(
343343
EnvOrSystemPropertyPreprocessor,
344344
RandomPreprocessor,
345-
LookupPreprocessor,
345+
LookupPreprocessor
346346
)
347347

348348
fun defaultResolvers(): List<Resolver> = listOf(
349349
EnvVarContextResolver,
350350
SystemPropertyContextResolver,
351351
ReferenceContextResolver,
352-
HopliteContextResolver,
352+
HopliteContextResolver
353353
)
354354

355355
fun defaultParamMappers(): List<ParameterMapper> = listOf(
356356
DefaultParamMapper,
357357
SnakeCaseParamMapper,
358358
KebabCaseParamMapper,
359-
AliasAnnotationParamMapper,
359+
AliasAnnotationParamMapper
360360
)
361361

362362
val defaultDecoders = listOf(
@@ -409,5 +409,5 @@ val defaultDecoders = listOf(
409409
com.sksamuel.hoplite.decoder.SecondsDecoder(),
410410
com.sksamuel.hoplite.decoder.InlineClassDecoder(),
411411
com.sksamuel.hoplite.decoder.SealedClassDecoder(),
412-
com.sksamuel.hoplite.decoder.DataClassDecoder(),
412+
com.sksamuel.hoplite.decoder.DataClassDecoder()
413413
)

0 commit comments

Comments
 (0)