From 752fe0356f9885530f2924c311cba215a39b710b Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Thu, 23 Mar 2017 11:39:07 -0400 Subject: [PATCH] Reinstate warns for publish events from Initiator JIRA: https://jira.spring.io/browse/INT-4220, https://jira.spring.io/browse/INT-4246 * Stop one more internal `initiator` in the `LockRegistryLeaderInitiatorTests` --- .../leader/LockRegistryLeaderInitiator.java | 20 ++++++++++++++----- .../LockRegistryLeaderInitiatorTests.java | 4 ++-- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiator.java b/spring-integration-core/src/main/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiator.java index f88312451d..7119c86fba 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiator.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiator.java @@ -363,17 +363,27 @@ public class LockRegistryLeaderInitiator implements SmartLifecycle, DisposableBe private void handleGranted() throws InterruptedException { LockRegistryLeaderInitiator.this.candidate.onGranted(this.context); if (LockRegistryLeaderInitiator.this.leaderEventPublisher != null) { - LockRegistryLeaderInitiator.this.leaderEventPublisher.publishOnGranted( - LockRegistryLeaderInitiator.this, this.context, this.lockKey); + try { + LockRegistryLeaderInitiator.this.leaderEventPublisher.publishOnGranted( + LockRegistryLeaderInitiator.this, this.context, this.lockKey); + } + catch (Exception e) { + logger.warn("Error publishing OnGranted event.", e); + } } } private void handleRevoked() { LockRegistryLeaderInitiator.this.candidate.onRevoked(this.context); if (LockRegistryLeaderInitiator.this.leaderEventPublisher != null) { - LockRegistryLeaderInitiator.this.leaderEventPublisher.publishOnRevoked( - LockRegistryLeaderInitiator.this, this.context, - LockRegistryLeaderInitiator.this.candidate.getRole()); + try { + LockRegistryLeaderInitiator.this.leaderEventPublisher.publishOnRevoked( + LockRegistryLeaderInitiator.this, this.context, + LockRegistryLeaderInitiator.this.candidate.getRole()); + } + catch (Exception e) { + logger.warn("Error publishing OnRevoked event.", e); + } } } diff --git a/spring-integration-core/src/test/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiatorTests.java b/spring-integration-core/src/test/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiatorTests.java index 983e11887d..a2b4a2ad21 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiatorTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/support/leader/LockRegistryLeaderInitiatorTests.java @@ -17,7 +17,6 @@ package org.springframework.integration.support.leader; import static org.hamcrest.CoreMatchers.is; -import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertThat; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; @@ -104,6 +103,7 @@ public class LockRegistryLeaderInitiatorTests { this.initiator.stop(); assertThat(other.await(20, TimeUnit.SECONDS), is(true)); assertThat(another.getContext().isLeader(), is(true)); + another.stop(); } @Test @@ -129,7 +129,7 @@ public class LockRegistryLeaderInitiatorTests { initiator.start(); assertTrue(onGranted.await(10, TimeUnit.SECONDS)); - assertFalse(initiator.getContext().isLeader()); + assertTrue(initiator.getContext().isLeader()); initiator.stop(); }