Fix RpcWorkerServiceHub and FlowWorkerServiceHub

This commit is contained in:
Katarzyna Streich 2018-11-28 11:09:06 +00:00
parent 8c02714b16
commit 8c5a60d98c
2 changed files with 10 additions and 9 deletions

View File

@ -88,7 +88,6 @@ class FlowWorkerServiceHub(override val configuration: NodeConfiguration,
private val ourKeyPair: KeyPair,
private val trustRoot: X509Certificate,
private val nodeCa: X509Certificate,
override val networkParametersStorage: DBNetworkParametersStorage,
private val signedNetworkParameters: NetworkParametersReader.NetworkParametersAndSigned) : ServiceHubInternal, SingletonSerializeAsToken() {
override val networkParameters: NetworkParameters = signedNetworkParameters.networkParameters
@ -148,14 +147,15 @@ class FlowWorkerServiceHub(override val configuration: NodeConfiguration,
override val cordappProvider = CordappProviderImpl(cordappLoader, CordappConfigFileProvider(emptyList()), attachments).tokenize()
@Suppress("LeakingThis")
override val keyManagementService = PersistentKeyManagementService(cacheFactory, identityService, database).tokenize()
private val servicesForResolution = ServicesForResolutionImpl(identityService, attachments, cordappProvider, networkParametersStorage, validatedTransactions)
@Suppress("LeakingThis")
override val vaultService = NodeVaultService(clock, keyManagementService, servicesForResolution, database, schemaService, cacheFactory).tokenize()
override val nodeProperties = NodePropertiesPersistentStore(StubbedNodeUniqueIdProvider::value, database, cacheFactory)
val flowLogicRefFactory = FlowLogicRefFactoryImpl(cordappLoader.appClassLoader)
override val monitoringService = MonitoringService(metricRegistry).tokenize()
private val networkMapClient: NetworkMapClient? = configuration.networkServices?.let { NetworkMapClient(it.networkMapURL, versionInfo) }
override val networkParametersStorage = DBNetworkParametersStorage(cacheFactory, database, networkMapClient).tokenize()
private val servicesForResolution = ServicesForResolutionImpl(identityService, attachments, cordappProvider, networkParametersStorage, validatedTransactions)
@Suppress("LeakingThis")
override val vaultService = NodeVaultService(clock, keyManagementService, servicesForResolution, database, schemaService, cacheFactory).tokenize()
override val networkMapUpdater= NetworkMapUpdater(
networkMapCache,
NodeInfoWatcher(
@ -403,7 +403,7 @@ class FlowWorkerServiceHub(override val configuration: NodeConfiguration,
database.startHikariPool(configuration.dataSourceProperties, configuration.database, schemas)
identityService.start(trustRoot, listOf(myInfo.legalIdentitiesAndCerts.first().certificate, nodeCa))
networkParametersStorage.start(signedNetworkParameters.signed, trustRoot)
database.transaction {
networkMapCache.start(networkParameters.notaries)
}

View File

@ -50,7 +50,6 @@ import net.corda.node.utilities.EnterpriseNamedCacheFactory
import net.corda.node.utilities.profiling.getTracingConfig
import net.corda.nodeapi.internal.NodeInfoAndSigned
import net.corda.nodeapi.internal.persistence.CordaPersistence
import net.corda.nodeapi.internal.persistence.contextTransaction
import net.corda.nodeapi.internal.persistence.isH2Database
import net.corda.serialization.internal.*
import org.slf4j.Logger
@ -112,7 +111,8 @@ class RpcWorkerServiceHub(override val configuration: NodeConfiguration,
@Suppress("LeakingThis")
override val keyManagementService = PersistentKeyManagementService(cacheFactory, identityService, database)
private val servicesForResolution = ServicesForResolutionImpl(identityService, attachments, cordappProvider, validatedTransactions)
override val networkParametersStorage = DBNetworkParametersStorage(cacheFactory, database, networkMapClient)
private val servicesForResolution = ServicesForResolutionImpl(identityService, attachments, cordappProvider, networkParametersStorage, validatedTransactions)
@Suppress("LeakingThis")
override val vaultService = NodeVaultService(clock, keyManagementService, servicesForResolution, database, schemaService, cacheFactory)
override val nodeProperties = NodePropertiesPersistentStore(StubbedNodeUniqueIdProvider::value, database, cacheFactory)
@ -127,7 +127,8 @@ class RpcWorkerServiceHub(override val configuration: NodeConfiguration,
),
networkMapClient,
configuration.baseDirectory,
configuration.extraNetworkMapKeys
configuration.extraNetworkMapKeys,
networkParametersStorage
).closeOnStop()
override val networkParameters = signedNetworkParameters.networkParameters
@ -234,7 +235,7 @@ class RpcWorkerServiceHub(override val configuration: NodeConfiguration,
networkMapClient?.start(trustRoot)
servicesForResolution.start(networkParameters)
networkParametersStorage.start(signedNetworkParameters.signed, trustRoot)
val isH2Database = isH2Database(configuration.dataSourceProperties.getProperty("dataSource.url", ""))
val schemas = if (isH2Database) schemaService.internalSchemas() else schemaService.schemaOptions.keys