Class SimpleCloseable
- java.lang.Object
-
- org.apache.sshd.common.util.logging.AbstractLoggingBean
-
- org.apache.sshd.common.util.closeable.IoBaseCloseable
-
- org.apache.sshd.common.util.closeable.SimpleCloseable
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Channel
,Closeable
- Direct Known Subclasses:
FuturesCloseable
,ParallelCloseable
,SequentialCloseable
public class SimpleCloseable extends IoBaseCloseable
- Author:
- Apache MINA SSHD Project
-
-
Field Summary
Fields Modifier and Type Field Description protected AtomicBoolean
closing
protected DefaultCloseFuture
future
-
Fields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
log
-
-
Constructor Summary
Constructors Constructor Description SimpleCloseable(Object id, Object lock)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCloseFutureListener(SshFutureListener<CloseFuture> listener)
Pre-register a listener to be informed when resource is closed.CloseFuture
close(boolean immediately)
Close this resource asynchronously and return a future.protected void
doClose(boolean immediately)
boolean
isClosed()
Returnstrue
if this object has been closed.boolean
isClosing()
Returnstrue
if theCloseable.close(boolean)
method has been called.void
removeCloseFutureListener(SshFutureListener<CloseFuture> listener)
Remove a pre-registered close event listenerString
toString()
-
Methods inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
-
-
-
-
Field Detail
-
future
protected final DefaultCloseFuture future
-
closing
protected final AtomicBoolean closing
-
-
Method Detail
-
isClosed
public boolean isClosed()
Description copied from interface:Closeable
Returnstrue
if this object has been closed.- Returns:
true
if closing
-
isClosing
public boolean isClosing()
Description copied from interface:Closeable
Returnstrue
if theCloseable.close(boolean)
method has been called. Note that this method will returntrue
even if thisCloseable.isClosed()
returnstrue
.- Returns:
true
if closing
-
addCloseFutureListener
public void addCloseFutureListener(SshFutureListener<CloseFuture> listener)
Description copied from interface:Closeable
Pre-register a listener to be informed when resource is closed. If resource is already closed, the listener will be invoked immediately and not registered for future notification- Parameters:
listener
- The notificationSshFutureListener
- nevernull
-
removeCloseFutureListener
public void removeCloseFutureListener(SshFutureListener<CloseFuture> listener)
Description copied from interface:Closeable
Remove a pre-registered close event listener- Parameters:
listener
- The registerSshFutureListener
- nevernull
. Ignored if not registered or resource already closed
-
close
public CloseFuture close(boolean immediately)
Description copied from interface:Closeable
Close this resource asynchronously and return a future. Resources support two closing modes: a graceful mode which will cleanly close the resource and an immediate mode which will close the resources abruptly.- Parameters:
immediately
-true
if the resource should be shut down abruptly,false
for a graceful close- Returns:
- a
CloseFuture
representing the close request
-
doClose
protected void doClose(boolean immediately)
-
-