From f04d181d8a6c6b8869bed33967f449caee93f5a1 Mon Sep 17 00:00:00 2001 From: Sean Gilligan Date: Sat, 12 Aug 2023 15:26:53 -0700 Subject: [PATCH] Remove deprecated AbstractTimeoutHandler This was first deprecated in 0.17-alpha1 (i.e. it has is not deprecated in the 0.16.x releases) so we might want to wait until after 0.17 final is released before merging this PR. However, this is fairly internal to the implementation so we might be able to remove it in the next 0.17 alpha release. --- .../bitcoinj/net/AbstractTimeoutHandler.java | 71 ------------------- .../org/bitcoinj/net/SocketTimeoutTask.java | 4 +- 2 files changed, 1 insertion(+), 74 deletions(-) delete mode 100644 core/src/main/java/org/bitcoinj/net/AbstractTimeoutHandler.java diff --git a/core/src/main/java/org/bitcoinj/net/AbstractTimeoutHandler.java b/core/src/main/java/org/bitcoinj/net/AbstractTimeoutHandler.java deleted file mode 100644 index f6fe59840..000000000 --- a/core/src/main/java/org/bitcoinj/net/AbstractTimeoutHandler.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright 2013 Google Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.bitcoinj.net; - -import java.time.Duration; - -/** - * A base class which provides basic support for socket timeouts. It is used instead of integrating timeouts into the - * NIO select thread both for simplicity and to keep code shared between NIO and blocking sockets as much as possible. - *

- * @deprecated Don't extend this class, implement {@link TimeoutHandler} using {@link SocketTimeoutTask} instead - */ -@Deprecated -public abstract class AbstractTimeoutHandler implements TimeoutHandler { - private final SocketTimeoutTask timeoutTask; - - public AbstractTimeoutHandler() { - timeoutTask = new SocketTimeoutTask(this::timeoutOccurred); - } - - /** - *

Enables or disables the timeout entirely. This may be useful if you want to store the timeout value but wish - * to temporarily disable/enable timeouts.

- * - *

The default is for timeoutEnabled to be true but timeout to be set to {@link Duration#ZERO} (ie disabled).

- * - *

This call will reset the current progress towards the timeout.

- */ - @Override - public synchronized final void setTimeoutEnabled(boolean timeoutEnabled) { - timeoutTask.setTimeoutEnabled(timeoutEnabled); - } - - /** - *

Sets the receive timeout, automatically killing the connection if no - * messages are received for this long

- * - *

A timeout of 0{@link Duration#ZERO} is interpreted as no timeout.

- * - *

The default is for timeoutEnabled to be true but timeout to be set to {@link Duration#ZERO} (ie disabled).

- * - *

This call will reset the current progress towards the timeout.

- */ - @Override - public synchronized final void setSocketTimeout(Duration timeout) { - timeoutTask.setSocketTimeout(timeout); - } - - /** - * Resets the current progress towards timeout to 0. - */ - protected synchronized void resetTimeout() { - timeoutTask.resetTimeout(); - } - - protected abstract void timeoutOccurred(); -} diff --git a/core/src/main/java/org/bitcoinj/net/SocketTimeoutTask.java b/core/src/main/java/org/bitcoinj/net/SocketTimeoutTask.java index 42dd8f91a..2ef09a2f6 100644 --- a/core/src/main/java/org/bitcoinj/net/SocketTimeoutTask.java +++ b/core/src/main/java/org/bitcoinj/net/SocketTimeoutTask.java @@ -69,10 +69,8 @@ public class SocketTimeoutTask implements TimeoutHandler { /** * Resets the current progress towards timeout to 0. - * @deprecated This will be made private once {@link AbstractTimeoutHandler} is removed. */ - @Deprecated - synchronized void resetTimeout() { + private synchronized void resetTimeout() { if (timeoutTask != null) timeoutTask.cancel(); if (timeout.isZero() || !timeoutEnabled)