2009-01-19 16:05:04 +01:00
|
|
|
/*
|
2012-06-04 22:31:44 +02:00
|
|
|
* Copyright 2012 The Netty Project
|
2009-01-19 16:05:04 +01:00
|
|
|
*
|
2011-12-09 06:18:34 +01:00
|
|
|
* The Netty Project licenses this file to you under the Apache License,
|
|
|
|
* version 2.0 (the "License"); you may not use this file except in compliance
|
|
|
|
* with the License. You may obtain a copy of the License at:
|
2009-01-19 16:05:04 +01:00
|
|
|
*
|
2012-06-04 22:31:44 +02:00
|
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
2009-01-19 16:05:04 +01:00
|
|
|
*
|
2009-08-28 09:15:49 +02:00
|
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
|
|
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
2011-12-09 06:18:34 +01:00
|
|
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
2009-08-28 09:15:49 +02:00
|
|
|
* License for the specific language governing permissions and limitations
|
|
|
|
* under the License.
|
2009-01-19 16:05:04 +01:00
|
|
|
*/
|
2011-12-09 04:38:59 +01:00
|
|
|
package io.netty.util;
|
2009-01-19 16:05:04 +01:00
|
|
|
|
|
|
|
/**
|
2009-06-17 08:37:36 +02:00
|
|
|
* A handle associated with a {@link TimerTask} that is returned by a
|
|
|
|
* {@link Timer}.
|
2009-01-19 16:05:04 +01:00
|
|
|
*/
|
|
|
|
public interface Timeout {
|
2009-06-17 08:37:36 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns the {@link Timer} that created this handle.
|
|
|
|
*/
|
2012-12-26 05:50:01 +01:00
|
|
|
Timer timer();
|
2009-06-17 08:37:36 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns the {@link TimerTask} which is associated with this handle.
|
|
|
|
*/
|
2012-12-26 05:50:01 +01:00
|
|
|
TimerTask task();
|
2009-01-20 05:29:58 +01:00
|
|
|
|
2009-06-17 08:37:36 +02:00
|
|
|
/**
|
|
|
|
* Returns {@code true} if and only if the {@link TimerTask} associated
|
|
|
|
* with this handle has been expired.
|
|
|
|
*/
|
2009-01-19 16:05:04 +01:00
|
|
|
boolean isExpired();
|
2009-06-17 08:37:36 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Returns {@code true} if and only if the {@link TimerTask} associated
|
|
|
|
* with this handle has been cancelled.
|
|
|
|
*/
|
2009-01-19 16:05:04 +01:00
|
|
|
boolean isCancelled();
|
2009-06-17 08:37:36 +02:00
|
|
|
|
|
|
|
/**
|
2012-06-29 13:59:48 +02:00
|
|
|
* Attempts to cancel the {@link TimerTask} associated with this handle.
|
|
|
|
* If the task has been executed or cancelled already, it will return with
|
|
|
|
* no side effect.
|
|
|
|
*
|
|
|
|
* @return True if the cancellation completed successfully, otherwise false
|
2009-06-17 08:37:36 +02:00
|
|
|
*/
|
2012-06-29 13:59:48 +02:00
|
|
|
boolean cancel();
|
2009-01-19 16:05:04 +01:00
|
|
|
}
|