mirror of
https://github.com/tommyskeff/futur4j.git
synced 2026-01-18 07:16:45 +00:00
documentation and small changes
- added docs for `Promise` and `PromiseFactory` - removed outdated README docs - moved some common utilities to `PromiseUtil` - improved efficiency of result array resizing - added cancellation result to promise executors - changed visibility of `PromiseJoiner` to public, and made some method names more verbose - inlined `DeferredExecutionException` to inside `AbstractPromise` - inlined default promise implementation to inner class in the factory - removed necessity for base factories to provide a logger
This commit is contained in:
@@ -3,10 +3,21 @@ package dev.tommyjs.futur.promise;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* A {@link Promise} that can be completed.
|
||||
*/
|
||||
public interface CompletablePromise<T> extends Promise<T> {
|
||||
|
||||
/**
|
||||
* Completes the promise successfully with the given result.
|
||||
* @param result the result
|
||||
*/
|
||||
void complete(@Nullable T result);
|
||||
|
||||
/**
|
||||
* Completes the promise exceptionally with the given exception.
|
||||
* @param result the exception
|
||||
*/
|
||||
void completeExceptionally(@NotNull Throwable result);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user