From 545dd25ef39c10fd4f7728efdb436c5dcda00271 Mon Sep 17 00:00:00 2001 From: Michele Sollecito Date: Thu, 8 Nov 2018 17:25:41 +0000 Subject: [PATCH] Working on merging changes to NodeConfigurationImpl. --- .../corda/node/services/config/NodeConfiguration.kt | 10 ++++++++-- .../node/services/config/schema/v1/ConfigSections.kt | 12 ++++++++++++ .../config/schema/v1/V1NodeConfigurationSpec.kt | 4 +++- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt b/node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt index ae6be20d61..928953d6f8 100644 --- a/node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt +++ b/node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt @@ -141,9 +141,15 @@ data class DevModeOptions(val disableCheckpointChecker: Boolean = Defaults.disab data class GraphiteOptions( val server: String, val port: Int, - val prefix: String? = null, // defaults to org name and ip address when null + val prefix: String? = Defaults.prefix, // defaults to org name and ip address when null + // This typo leaking in the node.conf is brilliant + val sampleInvervallSeconds: Long = Defaults.sampleInvervallSeconds +) { + internal object Defaults { + val prefix: String? = null val sampleInvervallSeconds: Long = 60 -) + } +} fun NodeConfiguration.shouldCheckCheckpoints(): Boolean { return this.devMode && this.devModeOptions?.disableCheckpointChecker != true diff --git a/node/src/main/kotlin/net/corda/node/services/config/schema/v1/ConfigSections.kt b/node/src/main/kotlin/net/corda/node/services/config/schema/v1/ConfigSections.kt index 8ad3fe4357..5330f9a591 100644 --- a/node/src/main/kotlin/net/corda/node/services/config/schema/v1/ConfigSections.kt +++ b/node/src/main/kotlin/net/corda/node/services/config/schema/v1/ConfigSections.kt @@ -20,6 +20,7 @@ import net.corda.node.services.config.DevModeOptions import net.corda.node.services.config.FlowOverride import net.corda.node.services.config.FlowOverrideConfig import net.corda.node.services.config.FlowTimeoutConfiguration +import net.corda.node.services.config.GraphiteOptions import net.corda.node.services.config.NetworkServicesConfig import net.corda.node.services.config.NodeH2Settings import net.corda.node.services.config.NodeRpcSettings @@ -250,4 +251,15 @@ internal object RelayConfigurationSpec : Configuration.Specification { return valid(RelayConfiguration(configuration[relayHost], configuration[remoteInboundPort], configuration[username], configuration[privateKeyFile], configuration[publicKeyFile], configuration[sshPort])) } +} + +internal object GraphiteOptionsSpec : Configuration.Specification("GraphiteOptions") { + private val server by string() + private val port by int() + private val prefix by string().optional() + private val sampleInvervallSeconds by long().optional().withDefaultValue(GraphiteOptions.Defaults.sampleInvervallSeconds) + + override fun parseValid(configuration: Config): Valid { + return valid(GraphiteOptions(configuration[server], configuration[port], configuration[prefix], configuration[sampleInvervallSeconds])) + } } \ No newline at end of file diff --git a/node/src/main/kotlin/net/corda/node/services/config/schema/v1/V1NodeConfigurationSpec.kt b/node/src/main/kotlin/net/corda/node/services/config/schema/v1/V1NodeConfigurationSpec.kt index 9e59514676..a6be6ded9b 100644 --- a/node/src/main/kotlin/net/corda/node/services/config/schema/v1/V1NodeConfigurationSpec.kt +++ b/node/src/main/kotlin/net/corda/node/services/config/schema/v1/V1NodeConfigurationSpec.kt @@ -81,6 +81,7 @@ internal object V1NodeConfigurationSpec : Configuration.Specification { @@ -139,7 +140,8 @@ internal object V1NodeConfigurationSpec : Configuration.Specification