protected Closeable getInnerCloseable() {
return acceptor != null ? acceptor : new CloseableUtils.AbstractCloseable() { };
}
public CloseFuture close(boolean immediately) {
IoAcceptor a;
synchronized (this) {
a = acceptor;
acceptor = null;
}
if (a != null) {
return a.close(immediately);
} else {
return CloseableUtils.closed();
}
}