public ServerBuilder connectionDrainDuration(Duration duration) {
        requireNonNull(duration, "duration");
        return connectionDrainDurationMicros(TimeUnit.NANOSECONDS.toMicros(duration.toNanos()));
    }
Sets the connection drain duration in micros for the connection shutdown.
At the beginning of the connection drain server signals the clients that the connection shutdown is
imminent but still accepts in flight requests.
After the connection drain end server stops accepting new requests.
Also, see {@link ServerBuilder#connectionDrainDurationMicros(long)}.

<p>
Note that HTTP/1 doesn't support draining as described here, so for HTTP/1 drain duration
is always {@code 0}.
</p>

@param duration the drain period. {@code Duration.ZERO} or negative value disables the drain period.
core/src/main/java/com/linecorp/armeria/server/ServerBuilder.java