@@ -0,0 +1,2764 @@
+/**%0A * %0A */%0Apackage com.ibm.storage.storagemanager.interfaces;%0A%0Aimport java.util.concurrent.Future;%0Aimport java.util.List;%0Aimport java.util.Map;%0A%0A%0A/**%0A * @author ArunIyengar%0A *%0A */%0Apublic interface KeyValueAsync%3CK,V%3E extends KeyValue%3CK,V%3E %7B%0A %0A    /**%0A     * delete all entries from the storage service asynchronously%0A     * %0A     * @return Future for status code%0A     * %0A     * */%0A    public Future%3CReturnStatus%3E clearAsync();%0A    %0A    /**%0A     * delete a key-value pair asynchronously%0A     * %0A     * @param key%0A     *            key corresponding to value%0A     * %0A     * @return Future for # of objects deleted, NUM_UNKNOWN if unknown%0A     * %0A     * */%0A    public Future%3CInteger%3E deleteAsync(K key);%0A%0A    /**%0A     * delete one or more key-value pairs%0A     * %0A     * @param keys%0A     *            iterable data structure containing the keys to delete%0A     * %0A     * @return Future for # of objects deleted, NUM_UNKNOWN if unknown%0A     * %0A     * */%0A    public Future%3CInteger%3E deleteAllAsync(List%3CK%3E keys);%0A%0A    /**%0A     * look up a value asynchronously%0A     * %0A     * @param key%0A     *            key corresponding to value%0A     * @return Future for value corresponding to key, future value null if key is not present%0A     * %0A     * */%0A    public Future%3CV%3E getAsync(K key);%0A    %0A    /**%0A     * look up one or more values asynchronously.%0A     * %0A     * @param keys%0A     *            iterable data structure containing the keys to look up%0A     * @return Future for map containing key-value pairs corresponding to data%0A     * %0A     * */%0A    public Future%3CMap%3CK, V%3E%3E getAllAsync(List%3CK%3E keys);%0A%0A    /**%0A     * Return size of thread pool supporting asynchronous interface%0A     * %0A     * @return integer containing thread pool size%0A     * %0A     * */%0A    public int getThreadPoolSize();%0A%0A    /**%0A     * store a key-value pair asynchronously%0A     * %0A     * @param key%0A     *            key associated with value%0A     * @param value%0A     *            value associated with key%0A     * %0A     * @return Future for status code%0A     * %0A     * */%0A    public Future%3CReturnStatus%3E putAsync(K key, V value);%0A%0A    /**%0A     * store one or more key-value pairs asynchronously%0A     * %0A     * @param map%0A     *            map containing key-value pairs to store%0A     * %0A     * @return Future for # of objects stored, NUM_UNKNOWN if unknown%0A     * %0A     * */%0A    public Future%3CInteger%3E putAllAsync(Map%3CK, V%3E map);%0A%0A    /**%0A     * Return number of stored objects asynchronously%0A     * %0A     * @return Future for number of stored objects%0A     * */%0A    public Future%3CLong%3E sizeAsync();%0A    %0A    /**%0A     * Output contents of current database to a string asynchronously%0A     * %0A     * @return Future for string containing output%0A     * %0A     * */%0A    public Future%3CString%3E toStringAsync();%0A%0A%7D%0A

Add asynchronous interface definition