java.net
public abstract class SocketImpl extends Object implements SocketOptions
A default implementation is provided by the system, but this can be
changed via installing a SocketImplFactory
(through a call
to the static method Socket.setSocketImplFactory
). A
subclass of Socket
can also pass in a SocketImpl
to the Socket(SocketImpl)
constructor to use an
implementation different from the system default without installing
a factory.
Field Summary | |
---|---|
protected InetAddress | address
The address of the remote end of the socket connection |
protected FileDescriptor | fd
A FileDescriptor object representing this socket connection. |
protected int | localport
The port number the socket is bound to locally |
protected int | port
The port number of the remote end of the socket connection |
Constructor Summary | |
---|---|
SocketImpl()
Default, no-argument constructor for use by subclasses. |
Method Summary | |
---|---|
protected abstract void | accept(SocketImpl s)
Accepts a connection on this socket.
|
protected abstract int | available()
Returns the number of bytes that the caller can read from this socket
without blocking.
|
protected abstract void | bind(InetAddress host, int port)
Binds to the specified port on the specified addr. |
protected abstract void | close()
Closes the socket. |
protected abstract void | connect(String host, int port)
Connects to the remote hostname and port specified as arguments.
|
protected abstract void | connect(InetAddress host, int port)
Connects to the remote address and port specified as arguments.
|
protected abstract void | connect(SocketAddress address, int timeout)
Connects to the socket to the host specified in address. |
protected abstract void | create(boolean stream)
Creates a new socket that is not bound to any local address/port and
is not connected to any remote address/port. |
protected FileDescriptor | getFileDescriptor()
Returns the FileDescriptor objects for this socket.
|
protected InetAddress | getInetAddress()
Returns the remote address this socket is connected to
|
protected abstract InputStream | getInputStream()
Returns an InputStream object for reading from this socket.
|
protected int | getLocalPort()
Returns the local port this socket is bound to
|
protected abstract OutputStream | getOutputStream()
Returns an OutputStream object for writing to this socket
|
protected int | getPort()
Returns the remote port this socket is connected to
|
protected abstract void | listen(int backlog)
Starts listening for connections on a socket. |
protected abstract void | sendUrgentData(int data)
Sends one byte of urgent data to the socket.
|
protected void | shutdownInput()
Shut down the input side of this socket. |
protected void | shutdownOutput()
Shut down the output side of this socket. |
protected boolean | supportsUrgentData()
Returns true or false when this socket supports sending urgent data
or not.
|
String | toString()
Returns a String representing the remote host and port of
this socket.
|
Parameters: s The implementation object for the accepted connection.
Throws: IOException If an error occurs
Returns: The number of readable bytes before blocking
Throws: IOException If an error occurs
Note that it is unspecified how to bind to all interfaces on the localhost (INADDR_ANY).
Parameters: host The address to bind to port The port number to bind to
Throws: IOException If an error occurs
Note that if the SO_LINGER option is set on this socket, then the operation could block.
Throws: IOException If an error occurs
Parameters: host The remote hostname to connect to port The remote port to connect to
Throws: IOException If an error occurs
Parameters: host The remote address to connect to port The remote port to connect to
Throws: IOException If an error occurs
Parameters: address Data of remote host timeout time to wait to stop connecting
Throws: IOException If an error occurs
Since: 1.4
Parameters: stream true for a stream socket, false for a datagram socket
Throws: IOException If an error occurs
Returns: A FileDescriptor for this socket.
Returns: The remote address
InputStream
object for reading from this socket.
Returns: An InputStream
for reading from this socket.
Throws: IOException If an error occurs
Returns: The local port
OutputStream
object for writing to this socket
Returns: An OutputStream
for writing to this socket.
Throws: IOException If an error occurs.
Returns: The remote port
Parameters: backlog The length of the pending connection queue
Throws: IOException If an error occurs
Parameters: data The byte to send, the low eight bits of it
Throws: IOException If an error occurs
Since: 1.4
Throws: IOException if an error occurs
Throws: IOException if an error occurs
Returns: true if the socket implementation supports sending urgent data, false otherwise
Since: 1.4
String
representing the remote host and port of
this socket.
Returns: A String
for this socket.