public interface Closeable
extends java.nio.channels.Channel
Closeable is a resource that can be closed.
The close method is invoked to release resources that the object is
holding. The user can pre-register listeners to be notified
when resource close is completed (successfully or otherwise)| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
CLOSE_WAIT_TIMEOUT
Timeout (milliseconds) for waiting on a
CloseFuture to successfully
complete its action. |
static long |
DEFAULT_CLOSE_WAIT_TIMEOUT
Default value for
CLOSE_WAIT_TIMEOUT if none specified |
| Modifier and Type | Method and Description |
|---|---|
void |
addCloseFutureListener(SshFutureListener<CloseFuture> listener)
Pre-register a listener to be informed when resource is closed.
|
default void |
close() |
CloseFuture |
close(boolean immediately)
Close this resource asynchronously and return a future.
|
static void |
close(Closeable closeable) |
static long |
getMaxCloseWaitTime(PropertyResolver resolver) |
boolean |
isClosed()
Returns
true if this object has been closed. |
boolean |
isClosing()
Returns
true if the close(boolean) method
has been called. |
default boolean |
isOpen() |
void |
removeCloseFutureListener(SshFutureListener<CloseFuture> listener)
Remove a pre-registered close event listener
|
static final java.lang.String CLOSE_WAIT_TIMEOUT
CloseFuture to successfully
complete its action.DEFAULT_CLOSE_WAIT_TIMEOUT,
Constant Field Valuesstatic final long DEFAULT_CLOSE_WAIT_TIMEOUT
CLOSE_WAIT_TIMEOUT if none specifiedCloseFuture close(boolean immediately)
immediately - true if the resource should be shut down abruptly,
false for a graceful closeCloseFuture representing the close requestvoid addCloseFutureListener(SshFutureListener<CloseFuture> listener)
listener - The notification SshFutureListener - never nullvoid removeCloseFutureListener(SshFutureListener<CloseFuture> listener)
listener - The register SshFutureListener - never null.
Ignored if not registered or resource already closedboolean isClosed()
true if this object has been closed.true if closingboolean isClosing()
true if the close(boolean) method
has been called. Note that this method will return true
even if this isClosed() returns true.true if closingdefault boolean isOpen()
isOpen in interface java.nio.channels.Channeldefault void close()
throws java.io.IOException
close in interface java.lang.AutoCloseableclose in interface java.nio.channels.Channelclose in interface java.io.Closeablejava.io.IOExceptionstatic long getMaxCloseWaitTime(PropertyResolver resolver)
static void close(Closeable closeable) throws java.io.IOException
java.io.IOException