@Test public void multiKeyCommandLoader() { MultiKeyCommandLoader cl = new MultiKeyCommandLoader(cmd->new CompletableFuture<Boolean>()) .foreach() .foreach(k->true) .creationTime(1) .creationTime(Instant.now()); }
MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter) { this.conveyor = conveyor; this.creationTime = creationTime; this.expirationTime = expirationTime; this.ttlMsec = ttlMsec; this.filter = filter; }
MultiKeyCommandLoader { MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter) { this.conveyor = conveyor; this.creationTime = creationTime; this.expirationTime = expirationTime; this.ttlMsec = ttlMsec; this.filter = filter; } }
MultiKeyCommandLoader { MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter) { this.conveyor = conveyor; this.creationTime = creationTime; this.expirationTime = expirationTime; this.ttlMsec = ttlMsec; this.filter = filter; } MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter); private  MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long ttl, Predicate<K> filter, boolean dumb);  MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor); }
MultiKeyCommandLoader { MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter) { this.conveyor = conveyor; this.creationTime = creationTime; this.expirationTime = expirationTime; this.ttlMsec = ttlMsec; this.filter = filter; } MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter); private  MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long ttl, Predicate<K> filter, boolean dumb);  MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor); MultiKeyCommandLoader<K,OUT> foreach(); MultiKeyCommandLoader<K,OUT> foreach(Predicate<K> p); MultiKeyCommandLoader<K,OUT> expirationTime(long et); MultiKeyCommandLoader<K,OUT> creationTime(long ct); MultiKeyCommandLoader<K,OUT> expirationTime(Instant instant); MultiKeyCommandLoader<K,OUT> creationTime(Instant instant); MultiKeyCommandLoader<K,OUT> ttl(long time, TimeUnit unit); MultiKeyCommandLoader<K,OUT> ttl(Duration duration); CompletableFuture<Boolean> cancel(); CompletableFuture<Boolean> timeout(); CompletableFuture<Boolean> reschedule(); CompletableFuture<List<ProductBin<K,OUT>>> peek(); CompletableFuture<Boolean> peek(Consumer<ProductBin<K,OUT>> consumer); CompletableFuture<List<Memento>> memento(); CompletableFuture<Boolean> memento(Consumer<Memento> memento); @Override String toString(); }
MultiKeyCommandLoader { MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter) { this.conveyor = conveyor; this.creationTime = creationTime; this.expirationTime = expirationTime; this.ttlMsec = ttlMsec; this.filter = filter; } MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long expirationTime, long ttlMsec, Predicate<K> filter); private  MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor,long creationTime, long ttl, Predicate<K> filter, boolean dumb);  MultiKeyCommandLoader(Function<GeneralCommand<K,?>, CompletableFuture<Boolean>> conveyor); MultiKeyCommandLoader<K,OUT> foreach(); MultiKeyCommandLoader<K,OUT> foreach(Predicate<K> p); MultiKeyCommandLoader<K,OUT> expirationTime(long et); MultiKeyCommandLoader<K,OUT> creationTime(long ct); MultiKeyCommandLoader<K,OUT> expirationTime(Instant instant); MultiKeyCommandLoader<K,OUT> creationTime(Instant instant); MultiKeyCommandLoader<K,OUT> ttl(long time, TimeUnit unit); MultiKeyCommandLoader<K,OUT> ttl(Duration duration); CompletableFuture<Boolean> cancel(); CompletableFuture<Boolean> timeout(); CompletableFuture<Boolean> reschedule(); CompletableFuture<List<ProductBin<K,OUT>>> peek(); CompletableFuture<Boolean> peek(Consumer<ProductBin<K,OUT>> consumer); CompletableFuture<List<Memento>> memento(); CompletableFuture<Boolean> memento(Consumer<Memento> memento); @Override String toString(); final long creationTime; final long expirationTime; final long ttlMsec; final Predicate<K> filter; }