This is an automated email from the ASF dual-hosted git repository. dmvk pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/flink.git
commit 6009e811ecfee8d7378016b71ebd6bf11e364427 Author: David Moravek <d...@apache.org> AuthorDate: Fri May 5 12:31:09 2023 +0200 [FLINK-32010][runtime] Leader election/retrieval drivers should properly extend AutoCloseable instead of having their own close method with the same signature. --- .../apache/flink/runtime/leaderelection/LeaderElectionDriver.java | 5 +---- .../apache/flink/runtime/leaderretrieval/LeaderRetrievalDriver.java | 6 +----- .../runtime/leaderelection/TestingLeaderElectionEventHandler.java | 3 ++- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/leaderelection/LeaderElectionDriver.java b/flink-runtime/src/main/java/org/apache/flink/runtime/leaderelection/LeaderElectionDriver.java index 87ab1a79d83..be16ca8a5a5 100644 --- a/flink-runtime/src/main/java/org/apache/flink/runtime/leaderelection/LeaderElectionDriver.java +++ b/flink-runtime/src/main/java/org/apache/flink/runtime/leaderelection/LeaderElectionDriver.java @@ -28,7 +28,7 @@ package org.apache.flink.runtime.leaderelection; * <p><strong>Important</strong>: The {@link LeaderElectionDriver} could not guarantee that there is * no {@link LeaderElectionEventHandler} callbacks happen after {@link #close()}. */ -public interface LeaderElectionDriver { +public interface LeaderElectionDriver extends AutoCloseable { /** * Write the current leader information to external persistent storage(e.g. Zookeeper, @@ -49,7 +49,4 @@ public interface LeaderElectionDriver { * @return Return whether the driver has leadership. */ boolean hasLeadership(); - - /** Close the services used for leader election. */ - void close() throws Exception; } diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/leaderretrieval/LeaderRetrievalDriver.java b/flink-runtime/src/main/java/org/apache/flink/runtime/leaderretrieval/LeaderRetrievalDriver.java index 35f87fc1d81..48add240540 100644 --- a/flink-runtime/src/main/java/org/apache/flink/runtime/leaderretrieval/LeaderRetrievalDriver.java +++ b/flink-runtime/src/main/java/org/apache/flink/runtime/leaderretrieval/LeaderRetrievalDriver.java @@ -25,8 +25,4 @@ package org.apache.flink.runtime.leaderretrieval; * <p><strong>Important</strong>: The {@link LeaderRetrievalDriver} could not guarantee that there * is no {@link LeaderRetrievalEventHandler} callbacks happen after {@link #close()}. */ -public interface LeaderRetrievalDriver { - - /** Close the services used for leader retrieval. */ - void close() throws Exception; -} +public interface LeaderRetrievalDriver extends AutoCloseable {} diff --git a/flink-runtime/src/test/java/org/apache/flink/runtime/leaderelection/TestingLeaderElectionEventHandler.java b/flink-runtime/src/test/java/org/apache/flink/runtime/leaderelection/TestingLeaderElectionEventHandler.java index af4e67b758e..5025e02de4a 100644 --- a/flink-runtime/src/test/java/org/apache/flink/runtime/leaderelection/TestingLeaderElectionEventHandler.java +++ b/flink-runtime/src/test/java/org/apache/flink/runtime/leaderelection/TestingLeaderElectionEventHandler.java @@ -31,7 +31,7 @@ import java.util.function.Consumer; * testing purposes. */ public class TestingLeaderElectionEventHandler extends TestingLeaderBase - implements LeaderElectionEventHandler { + implements LeaderElectionEventHandler, AutoCloseable { private final Object lock = new Object(); @@ -135,6 +135,7 @@ public class TestingLeaderElectionEventHandler extends TestingLeaderBase } } + @Override public void close() { synchronized (lock) { running = false;