@Test public void getAndSetDelegate() { Timeout timeout1 = new Timeout(); Timeout timeout2 = new Timeout(); ForwardingTimeout forwardingTimeout = new ForwardingTimeout(timeout1); forwardingTimeout.timeout(5, TimeUnit.SECONDS); assertThat(timeout1.timeoutNanos()).isNotEqualTo(0L); assertThat(timeout2.timeoutNanos()).isEqualTo(0L); forwardingTimeout.clearTimeout(); assertThat(timeout1.timeoutNanos()).isEqualTo(0L); assertThat(timeout2.timeoutNanos()).isEqualTo(0L); assertThat(forwardingTimeout.delegate()).isEqualTo(timeout1); assertThat(forwardingTimeout.setDelegate(timeout2)).isEqualTo(forwardingTimeout); forwardingTimeout.timeout(5, TimeUnit.SECONDS); assertThat(timeout1.timeoutNanos()).isEqualTo(0L); assertThat(timeout2.timeoutNanos()).isNotEqualTo(0L); forwardingTimeout.clearTimeout(); assertThat(timeout1.timeoutNanos()).isEqualTo(0L); assertThat(timeout2.timeoutNanos()).isEqualTo(0L); assertThat(forwardingTimeout.delegate()).isEqualTo(timeout2); } }
long timeoutBefore = source.timeout().timeoutNanos(); source.timeout().clearTimeout(); try {
long timeoutBefore = source.timeout().timeoutNanos(); source.timeout().clearTimeout(); try {
@Override public long timeoutNanos() { return delegate.timeoutNanos(); }
long timeoutBefore = source.timeout().timeoutNanos(); source.timeout().clearTimeout(); try {
long timeoutBefore = source.timeout().timeoutNanos(); source.timeout().clearTimeout(); try {