001package com.hammurapi.common.concurrent;
002
003import java.util.concurrent.Future;
004
005/**
006 * Notifies callable listeners about callable invocation.
007 * @author Pavel Vlasov
008 *
009 * @param <V>
010 */
011public interface NotifyingFuture<V> extends Future<V> {
012
013        /**
014         * Adds callable listener.
015         * @param listener
016         */
017        void addListener(CallableListener<V> listener);
018        
019        /**
020         * Removes callable listener.
021         * @param listener
022         */
023        void removeListener(CallableListener<V> listener);
024}