From 9af0ac5458ab69e54c8f3693b846a6fed1c0e1a2 Mon Sep 17 00:00:00 2001 From: Will Vigor Date: Tue, 25 Jun 2024 16:34:40 +0100 Subject: [PATCH] Close the registration before closing the subscription --- .../lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt b/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt index 70eb443ebc9..79aea1fcacd 100644 --- a/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt +++ b/components/domino-logic/src/main/kotlin/net/corda/lifecycle/domino/logic/util/SubscriptionDominoTileBase.kt @@ -126,10 +126,11 @@ abstract class SubscriptionDominoTileBase( } private fun createAndStartSubscription() { + subscriptionRegistration.get()?.close() coordinator.createManagedResource(SUBSCRIPTION, subscriptionGenerator) val subscriptionName = coordinator.getManagedResource(SUBSCRIPTION)?.subscriptionName ?: throw CordaRuntimeException("Subscription could not be extracted from the lifecycle coordinator.") - subscriptionRegistration.getAndSet(coordinator.followStatusChangesByName(setOf(subscriptionName)))?.close() + subscriptionRegistration.getAndSet(coordinator.followStatusChangesByName(setOf(subscriptionName))) coordinator.getManagedResource(SUBSCRIPTION)?.start() }