1 /*
2 * This file is part of Waarp Project (named also Waarp or GG).
3 *
4 * Copyright (c) 2019, Waarp SAS, and individual contributors by the @author
5 * tags. See the COPYRIGHT.txt in the distribution for a full listing of
6 * individual contributors.
7 *
8 * All Waarp Project is free software: you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or (at your
11 * option) any later version.
12 *
13 * Waarp is distributed in the hope that it will be useful, but WITHOUT ANY
14 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15 * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along with
18 * Waarp . If not, see <http://www.gnu.org/licenses/>.
19 */
20 package org.waarp.common.future;
21
22 import java.util.concurrent.TimeUnit;
23
24 /**
25 * Future completed
26 */
27 public abstract class WaarpCompletedFuture implements WaarpFutureInterface {
28 /**
29 *
30 */
31 protected WaarpCompletedFuture() {
32 // Empty
33 }
34
35 @Override
36 public final boolean awaitOrInterruptible() {
37 return !Thread.interrupted();
38 }
39
40 @Override
41 public final boolean awaitOrInterruptible(final long timeoutMilliseconds) {
42 return !Thread.interrupted();
43 }
44
45 @Override
46 public final boolean awaitOrInterruptible(final long timeout,
47 final TimeUnit unit) {
48 return !Thread.interrupted();
49 }
50
51 @Override
52 public final void reset() {
53 // nothing
54 }
55
56 @Override
57 public final boolean isDone() {
58 return true;
59 }
60
61 @Override
62 public final boolean setFailure(final Throwable cause) {
63 return false;
64 }
65
66 @Override
67 public final boolean setSuccess() {
68 return false;
69 }
70
71 @Override
72 public final boolean cancel() {
73 return false;
74 }
75
76 @Override
77 public final boolean isCancelled() {
78 return false;
79 }
80 }