Package org.bitcoinj.net
Class BlockingClientManager
java.lang.Object
com.google.common.util.concurrent.AbstractIdleService
org.bitcoinj.net.BlockingClientManager
- All Implemented Interfaces:
com.google.common.util.concurrent.Service,ClientConnectionManager
public class BlockingClientManager
extends com.google.common.util.concurrent.AbstractIdleService
implements ClientConnectionManager
A thin wrapper around a set of BlockingClients.
Generally, using NioClient and NioClientManager should be preferred over BlockingClient
and BlockingClientManager as they scale significantly better, unless you wish to connect over a proxy or use
some other network settings that cannot be set using NIO.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.google.common.util.concurrent.Service
com.google.common.util.concurrent.Service.Listener, com.google.common.util.concurrent.Service.State -
Constructor Summary
ConstructorsConstructorDescriptionBlockingClientManager(SocketFactory socketFactory) Creates a blocking client manager that will obtain sockets from the given factory. -
Method Summary
Modifier and TypeMethodDescriptionvoidcloseConnections(int n) Closes n peer connectionsintGets the number of connected peersopenConnection(SocketAddress serverAddress, StreamConnection connection) Creates a new connection to the given address, with the given connection used to handle incoming data.voidsetConnectTimeout(Duration connectTimeout) Sets the number of milliseconds to wait before giving up on a connect attemptvoidsetConnectTimeoutMillis(int connectTimeoutMillis) Deprecated.protected voidshutDown()protected voidstartUp()Methods inherited from class com.google.common.util.concurrent.AbstractIdleService
addListener, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, executor, failureCause, isRunning, serviceName, startAsync, state, stopAsync, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.common.util.concurrent.Service
addListener, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, failureCause, isRunning, startAsync, state, stopAsync
-
Constructor Details
-
BlockingClientManager
public BlockingClientManager() -
BlockingClientManager
Creates a blocking client manager that will obtain sockets from the given factory. Useful for customising how bitcoinj connects to the P2P network.
-
-
Method Details
-
openConnection
public ListenableCompletableFuture<SocketAddress> openConnection(SocketAddress serverAddress, StreamConnection connection) Description copied from interface:ClientConnectionManagerCreates a new connection to the given address, with the given connection used to handle incoming data. Any errors that occur during connection will be returned in the given future, including errors that can occur immediately.- Specified by:
openConnectionin interfaceClientConnectionManager
-
setConnectTimeout
Sets the number of milliseconds to wait before giving up on a connect attempt- Parameters:
connectTimeout- timeout for establishing a connection to the client
-
setConnectTimeoutMillis
Deprecated. -
startUp
- Specified by:
startUpin classcom.google.common.util.concurrent.AbstractIdleService- Throws:
Exception
-
shutDown
- Specified by:
shutDownin classcom.google.common.util.concurrent.AbstractIdleService- Throws:
Exception
-
getConnectedClientCount
public int getConnectedClientCount()Description copied from interface:ClientConnectionManagerGets the number of connected peers- Specified by:
getConnectedClientCountin interfaceClientConnectionManager
-
closeConnections
public void closeConnections(int n) Description copied from interface:ClientConnectionManagerCloses n peer connections- Specified by:
closeConnectionsin interfaceClientConnectionManager
-
setConnectTimeout(Duration)