Package org.jgroups.blocks.cs
Class TcpClient
java.lang.Object
org.jgroups.blocks.cs.BaseServer
org.jgroups.blocks.cs.TcpBaseServer
org.jgroups.blocks.cs.TcpClient
- All Implemented Interfaces:
Closeable,AutoCloseable,Client,ConnectionListener
- Since:
- 3.6.5
-
Nested Class Summary
Nested classes/interfaces inherited from class org.jgroups.blocks.cs.BaseServer
BaseServer.Reaper -
Field Summary
FieldsFields inherited from class org.jgroups.blocks.cs.TcpBaseServer
buffered_inputstream_size, buffered_outputstream_size, max_send_queue, non_blocking_sends, peer_addr_read_timeoutFields inherited from class org.jgroups.blocks.cs.BaseServer
client_bind_addr, client_bind_port, conn_expire_time, conn_listeners, conns, defer_client_binding, factory, linger, local_addr, lock, log, log_details, max_length, OK, reaper, reaperInterval, receiver, recv_buf_size, running, send_buf_size, sock_conn_timeout, socket_factory, tcp_nodelay, time_service, use_acks, use_peer_connections -
Constructor Summary
ConstructorsConstructorDescriptionTcpClient(InetAddress bind_addr, int bind_port, InetAddress server_addr, int server_port) Creates an instance of anTcpClientthat acts as a client: no server socket is created and no acceptor is started to listen for incoming connections.Creates an instance of anTcpClientthat acts as a client: no server socket is created and no acceptor is started to listen for incoming connections. -
Method Summary
Modifier and TypeMethodDescriptionvoidconnectionClosed(Connection conn) protected voiddoStart()booleanremoteAddress(IpAddress addr) Sets the address of the server.voidsend(byte[] data, int offset, int length) Sends data to the remote server.voidsend(ByteBuffer data) Sends data to the remote server.voidvoidsend(Address dest, ByteBuffer data) voidstart()Starts accepting connections.voidstop()Stops listening for connections and handling traffic.toString()Methods inherited from class org.jgroups.blocks.cs.TcpBaseServer
createConnection, getBufferedInputStreamSize, getBufferedOutputStreamSize, maxSendQueue, maxSendQueue, nonBlockingSends, nonBlockingSends, peerAddressReadTimeout, peerAddressReadTimeout, setBufferedInputStreamSize, setBufferedOutputStreamSizeMethods inherited from class org.jgroups.blocks.cs.BaseServer
addConnection, addConnectionListener, clearConnections, clientBindAddress, clientBindAddress, clientBindPort, clientBindPort, close, closeConnection, closeConnection, closeConnection, closeConnection, connected, connectionEstablished, connectionEstablishedTo, connExpireTime, connExpireTimeout, deferClientBinding, deferClientBinding, explanation, flush, flushAll, forAllConnections, getConnection, getConnection, getMaxLength, getNumConnections, getNumOpenConnections, hasConnection, linger, linger, localAddress, localAddress, log, log, logDetails, logDetails, notifyConnectionClosed, notifyConnectionEstablished, printConnections, reaperInterval, reaperInterval, receive, receive, receive, receiveBufferSize, receiveBufferSize, receiver, receiver, removeConnectionIfPresent, removeConnectionListener, replaceConnection, retainAll, running, sendBufferSize, sendBufferSize, sendToAll, sendToAll, setMaxLength, socketConnectionTimeout, socketConnectionTimeout, socketFactory, socketFactory, tcpNodelay, tcpNodelay, timeService, timeService, toString, useAcks, useAcks, usePeerConnections, usePeerConnections, validateArgsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.jgroups.blocks.cs.Client
localAddressMethods inherited from interface org.jgroups.blocks.cs.ConnectionListener
connectionEstablished
-
Field Details
-
remote_addr
-
conn
-
-
Constructor Details
-
TcpClient
Creates an instance of anTcpClientthat acts as a client: no server socket is created and no acceptor is started to listen for incoming connections. Instead, a client socket is created (bound to bind_addr/bind_port) and connected to server_addr/server_port. This is used to send messages to the remote server and receive messages from it. Note that there is only a single TCP connection established between the client and server.- Parameters:
bind_addr- The address to which the local socket should bind to. Can be null, then the OS picks the addressserver_addr- The address of the server to connect to
-
TcpClient
Creates an instance of anTcpClientthat acts as a client: no server socket is created and no acceptor is started to listen for incoming connections. Instead, a client socket is created (bound to bind_addr/bind_port) and connected to server_addr/server_port. This is used to send messages to the remote server and receive messages from it. Note that there is only a single TCP connection established between the client and server.- Parameters:
bind_addr- The address to which the local socket should bind to. Can be null, then the OS picks the addressbind_port- The local port. Can be 0, then the OS picks the port.server_addr- The address of the server to connect toserver_port- The port of the server to connect to.
-
-
Method Details
-
remoteAddress
- Specified by:
remoteAddressin interfaceClient
-
remoteAddress
Sets the address of the server. Has no effect when already connected. -
isConnected
public boolean isConnected()- Specified by:
isConnectedin interfaceClient
-
start
Description copied from class:BaseServerStarts accepting connections. Typically, socket handler or selectors thread are started here.- Overrides:
startin classBaseServer- Throws:
Exception
-
stop
public void stop()Description copied from class:BaseServerStops listening for connections and handling traffic. Typically, socket handler or selector threads are stopped, and server sockets or channels are closed.- Overrides:
stopin classBaseServer
-
send
- Overrides:
sendin classBaseServer- Throws:
Exception
-
send
- Overrides:
sendin classBaseServer- Throws:
Exception
-
send
Description copied from interface:ClientSends data to the remote server. The server's address must have been set before. -
send
Description copied from interface:ClientSends data to the remote server. The server's address must have been set before. -
connectionClosed
- Specified by:
connectionClosedin interfaceConnectionListener- Overrides:
connectionClosedin classBaseServer
-
toString
- Overrides:
toStringin classBaseServer
-
doStart
- Throws:
Exception
-