RemoteTable extends BaseReadWriteTable<K, V> implements ReadWriteTable<K, V>, AsyncReadWriteTable<K, V> { @Override public CompletableFuture<Void> deleteAllAsync(List<K> keys, Object ... args) { Preconditions.checkNotNull(writeFn, "null write function"); Preconditions.checkNotNull(keys, "null keys"); if (keys.isEmpty()) { return CompletableFuture.completedFuture(null); } return instrument(() -> asyncTable.deleteAllAsync(keys, args), metrics.numDeleteAlls, metrics.deleteAllNs) .exceptionally(e -> { throw new SamzaException(String.format("Failed to delete records for " + keys), e); }); } RemoteTable(
      String tableId,
      TableReadFunction readFn,
      TableWriteFunction writeFn,
      TableRateLimiter<K, V> readRateLimiter,
      TableRateLimiter<K, V> writeRateLimiter,
      ExecutorService rateLimitingExecutor,
      TableRetryPolicy readRetryPolicy,
      TableRetryPolicy writeRetryPolicy,
      ScheduledExecutorService retryExecutor,
      BatchProvider<K, V> batchProvider,
      ScheduledExecutorService batchExecutor,
      ExecutorService callbackExecutor); @Override V get(K key, Object ... args); @Override CompletableFuture<V> getAsync(K key, Object ... args); @Override Map<K, V> getAll(List<K> keys, Object ... args); @Override CompletableFuture<Map<K, V>> getAllAsync(List<K> keys, Object ... args); @Override T read(int opId, Object ... args); @Override CompletableFuture<T> readAsync(int opId, Object ... args); @Override void put(K key, V value, Object ... args); @Override CompletableFuture<Void> putAsync(K key, V value, Object ... args); @Override void putAll(List<Entry<K, V>> entries, Object ... args); @Override CompletableFuture<Void> putAllAsync(List<Entry<K, V>> records, Object ... args); @Override void delete(K key, Object ... args); @Override CompletableFuture<Void> deleteAsync(K key, Object ... args); @Override void deleteAll(List<K> keys, Object ... args); @Override CompletableFuture<Void> deleteAllAsync(List<K> keys, Object ... args); @Override T write(int opId, Object ... args); @Override CompletableFuture<T> writeAsync(int opId, Object... args); @Override void init(Context context); @Override void flush(); @Override void close(); TableReadFunction<K, V> getReadFunction(); TableWriteFunction<K, V> getWriteFunction();  }
@Test public void testDeleteAllAsync() { doTestDeleteAll(false, false); }