public final class Status extends Object implements Serializable
| Modifier and Type | Method and Description |
|---|---|
static <T> Function<Status,CompletableFuture<Result<T>>> |
bindValue(T value)
Create functor to compose the successful status to completed future with specified value.
|
static Function<Status,CompletableFuture<Status>> |
compose(Supplier<CompletableFuture<Status>> supplier)
Create functor to compose the successful status to next completable future with another status.
|
static <T> Function<Status,CompletableFuture<Result<T>>> |
composeResult(Supplier<CompletableFuture<Result<T>>> supplier)
Create functor to compose the successful status to next completable future with result.
|
boolean |
equals(Object o) |
void |
expectSuccess() |
void |
expectSuccess(String errorMsg) |
Throwable |
getCause() |
StatusCode |
getCode() |
Double |
getConsumedRu() |
Issue[] |
getIssues() |
boolean |
hasConsumedRu() |
int |
hashCode() |
boolean |
isSuccess() |
static Status |
of(StatusCode code) |
static Status |
of(StatusCode code,
Double consumedRu,
Issue... issues) |
static Status |
of(StatusCode code,
Issue... issues) |
static Status |
of(StatusCode code,
Throwable cause,
Issue... issues) |
String |
toString() |
Status |
withCause(Throwable cause) |
Status |
withConsumedRu(Double newConsumedRu) |
Status |
withIssues(Issue... newIssues) |
public static final Status SUCCESS
public static Function<Status,CompletableFuture<Status>> compose(Supplier<CompletableFuture<Status>> supplier)
This helper is designed to be used as CompletableFuture.thenCompose(java.util.function.Function)
argument
Example of usage:
// Create one table
session.createTable(...)
// Create second table if first was created successful
.thenCompose(Status.compose(() -> session.createTable(...)));
supplier - generator for completable future with another statuspublic static <T> Function<Status,CompletableFuture<Result<T>>> composeResult(Supplier<CompletableFuture<Result<T>>> supplier)
This helper is designed to be used as CompletableFuture.thenCompose(java.util.function.Function)
argument
Example of usage:
// Create one table
session.createTable(...)
// Execute query if table was created successful
.thenCompose(Status.composeResult(() -> session.executeDataQuery(...)));
T - type of value in Resultsupplier - generator for completable future with resultpublic static <T> Function<Status,CompletableFuture<Result<T>>> bindValue(T value)
This helper is designed to be used as CompletableFuture.thenCompose(java.util.function.Function)
argument
Example of usage:
// Start new transaction
session.beginTransaction(...)
// Execute query in opened transaction
.thenCompose(Result.compose(transaction -> session.executeDataQuery(...)
// Commmit transaction
.thenCompose(Result.compose(result -> transaction.commit()
// And return result of query if commit was successful
.thenCompose(Status.bindValue(result.getResultSet(0)))
))
));
T - type of value in Resultvalue - value to create completed futurepublic static Status of(StatusCode code, Double consumedRu, Issue... issues)
public static Status of(StatusCode code, Issue... issues)
public static Status of(StatusCode code, Throwable cause, Issue... issues)
public static Status of(StatusCode code)
public boolean hasConsumedRu()
public Double getConsumedRu()
public StatusCode getCode()
public Throwable getCause()
public Issue[] getIssues()
public boolean isSuccess()
public void expectSuccess(String errorMsg) throws UnexpectedResultException
UnexpectedResultExceptionpublic void expectSuccess()
throws UnexpectedResultException
UnexpectedResultExceptionCopyright © 2024. All rights reserved.