    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}