Package org.jgroups.blocks.cs
Class NioClient
java.lang.Object
org.jgroups.blocks.cs.BaseServer
org.jgroups.blocks.cs.NioBaseServer
org.jgroups.blocks.cs.NioClient
- All Implemented Interfaces:
Closeable,AutoCloseable,Client,ConnectionListener
- Since:
- 3.6.5
-
Nested Class Summary
Nested classes/interfaces inherited from class org.jgroups.blocks.cs.NioBaseServer
NioBaseServer.AcceptorNested classes/interfaces inherited from class org.jgroups.blocks.cs.BaseServer
BaseServer.Reaper -
Field Summary
FieldsFields inherited from class org.jgroups.blocks.cs.NioBaseServer
acceptor, copy_on_partial_write, max_send_buffers, num_selects, reader_idle_time, reg_lock, registration, selectorFields 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
ConstructorsConstructorDescriptionNioClient(InetAddress bind_addr, int bind_port, InetAddress server_addr, int server_port) Creates an instance of anNioClientthat acts as a client: no server channel is created and no acceptor is started to listen for incoming connections.Creates an instance of anNioClientthat acts as a client: no server channel is created and no acceptor is started to listen for incoming connections. -
Method Summary
Modifier and TypeMethodDescriptionprotected 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.NioBaseServer
acceptorDone, acceptorRunning, copyOnPartialWrite, copyOnPartialWrite, createConnection, handleAccept, maxSendBuffers, maxSendBuffers, numPartialWrites, numSelects, printBuffers, readerIdleTime, readerIdleTime, register, selectorOpenMethods inherited from class org.jgroups.blocks.cs.BaseServer
addConnection, addConnectionListener, clearConnections, clientBindAddress, clientBindAddress, clientBindPort, clientBindPort, close, closeConnection, closeConnection, closeConnection, closeConnection, connected, connectionClosed, 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
localAddress
-
Field Details
-
remote_addr
-
conn
-
-
Constructor Details
-
NioClient
Creates an instance of anNioClientthat acts as a client: no server channel is created and no acceptor is started to listen for incoming connections. Instead, a channel 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 channel should bind to. Can be null, then the OS picks the addressserver_addr- The address of the server to connect to
-
NioClient
Creates an instance of anNioClientthat acts as a client: no server channel is created and no acceptor is started to listen for incoming connections. Instead, a channel 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 channel 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. -
toString
- Overrides:
toStringin classBaseServer
-
doStart
- Throws:
Exception
-