## org.apache.cassandra.concurrent
Class CreationTimeAwareFuture<V>

    java.lang.Object
      org.apache.cassandra.concurrent.CreationTimeAwareFuture<V>

Type Parameters:
  `V` -

All Implemented Interfaces:
  java.util.concurrent.Future<V>

    public class CreationTimeAwareFuture<V>

extends java.lang.Object
implements java.util.concurrent.Future<V>

Decorates `FutureTask`

This Future implementation makes the future.get(long timeout, TimeUnit unit) wait the amount of time specified in the .get(...) call based on the object creation by keeping an internal timestamp of when this object was constructed

Constructor Summary
`CreationTimeAwareFuture(java.util.concurrent.Future<V> future)`

Method Summary
`boolean` `cancel(boolean mayInterruptIfRunning)`
`V` `get()`
`V` `get(long timeout, java.util.concurrent.TimeUnit unit)`
`boolean` `isCancelled()`
`boolean` `isDone()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CreationTimeAwareFuture

    public CreationTimeAwareFuture(java.util.concurrent.Future<V> future)

Method Detail

### get

    public V get(long timeout,
                 java.util.concurrent.TimeUnit unit)
          throws java.lang.InterruptedException,
                 java.util.concurrent.ExecutionException,
                 java.util.concurrent.TimeoutException

  Specified by:
    `get` in interface `java.util.concurrent.Future<V>`
  Throws:
    `java.lang.InterruptedException`
    `java.util.concurrent.ExecutionException`
    `java.util.concurrent.TimeoutException`

### cancel

    public boolean cancel(boolean mayInterruptIfRunning)

  Specified by:
    `cancel` in interface `java.util.concurrent.Future<V>`

### isCancelled

    public boolean isCancelled()

  Specified by:
    `isCancelled` in interface `java.util.concurrent.Future<V>`

### isDone

    public boolean isDone()

  Specified by:
    `isDone` in interface `java.util.concurrent.Future<V>`

### get

    public V get()
          throws java.lang.InterruptedException,
                 java.util.concurrent.ExecutionException

  Specified by:
    `get` in interface `java.util.concurrent.Future<V>`
  Throws:
    `java.lang.InterruptedException`
    `java.util.concurrent.ExecutionException`

Copyright © 2013 The Apache Software Foundation