public abstract class ServerSocketListener<T extends Client> extends Object implements ServerListener<T>
ServerListener
that accepts connections on a ServerSocket
.Constructor and Description |
---|
ServerSocketListener(ServerSocket serverSocket)
Constructs a new listener.
|
Modifier and Type | Method and Description |
---|---|
T |
acceptClient()
Accepts the next client that appears on this listener.
|
void |
close()
Closes any underlying
Closeable resources associated with this
listener. |
String |
toString() |
public ServerSocketListener(ServerSocket serverSocket)
serverSocket
- server socket delegatepublic T acceptClient() throws IOException
An implementation of this method is expected to block the calling thread and not return until either a client appears or an exception occurs.
acceptClient
in interface ServerListener<T extends Client>
IOException
public void close()
Closeable
resources associated with this
listener.
Note that (as described in Doug Lea's discussion about interrupting I/O
operations in "Concurrent Programming in Java" (Addison-Wesley
Professional, 2nd edition, 1999) this method is used to interrupt
any blocked I/O operation in the client when the server is shutting
down. The client implementation must anticipate this potential,
and gracefully exit when the blocked I/O operation throws the
relevant IOException
subclass.
Note also, that unlike Closeable.close()
this method is not
permitted to propagate any IOException
that occurs when closing
the underlying resource(s).
close
in interface ServerListener<T extends Client>
close
in interface Closeable
close
in interface AutoCloseable
Copyright © 2010 - 2020 Adobe. All Rights Reserved