Interface Client
-
- All Superinterfaces:
java.lang.AutoCloseable
,java.io.Closeable
,java.lang.Runnable
@Deprecated(since="2022-01-27") public interface Client extends java.lang.Runnable, java.io.Closeable
Deprecated.This internal logback API is not supported by AEM as a Cloud Service.A client of aServerRunner
.This interface exists primarily to abstract away the details of the client's underlying
Socket
and the concurrency associated with handling multiple clients. Such realities make it difficult to create effective unit tests for theServerRunner
that are easy to understand and maintain.This interface captures the only those details about a client that the
ServerRunner
cares about; namely, that it is something that- is Runnable — i.e. it can be executed concurrently
- holds resources that need to be closed before the client is discarded
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description void
close()
Deprecated.Closes any resources that are held by the client.
-
-
-
Method Detail
-
close
void close()
Deprecated.Closes any resources that are held by the client.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 anyIOException
that occurs when closing the underlying resource(s).- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
-
-